From 1457b5d201b21fa592c40c99e911dc943f65a4b2 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 12:10:22 -0600 Subject: [PATCH 01/28] Add DD support for RP2040 bootloader options --- data/mappings/info_config.hjson | 5 +++++ data/schemas/keyboard.jsonschema | 9 +++++++++ platforms/chibios/boards/QMK_BLOK/configs/config.h | 2 +- platforms/chibios/boards/QMK_PM2040/configs/config.h | 2 +- platforms/chibios/bootloaders/rp2040.c | 4 ++-- 5 files changed, 18 insertions(+), 4 deletions(-) diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson index 8b08f2e45d38..95bf6f128144 100644 --- a/data/mappings/info_config.hjson +++ b/data/mappings/info_config.hjson @@ -189,6 +189,11 @@ "RGBLIGHT_DEFAULT_VAL": {"info_key": "rgblight.default.val", "value_type": "int"}, "RGBLIGHT_DEFAULT_SPD": {"info_key": "rgblight.default.speed", "value_type": "int"}, + // RP2040 Bootloader + "RP2040_BOOTLOADER_DOUBLE_TAP_RESET": {"info_key": "rp2040_bootloader.double_tap_reset", "value_type": "flag"}, + "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT": {"info_key": "rp2040_bootloader.double_tap_reset_timeout", "value_type": "int"}, + "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED": {"info_key": "rp2040_bootloader.led"} + // Secure "SECURE_IDLE_TIMEOUT": {"info_key": "secure.idle_timeout", "value_type": "int"}, "SECURE_UNLOCK_SEQUENCE": {"info_key": "secure.unlock_sequence", "value_type": "array.array.int", "to_json": false}, diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index ef2b4802a40a..35c258d4fac2 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -835,6 +835,15 @@ } } }, + "rp2040_bootloader": { + "type": "object", + "additionalProperties": false, + "properties": { + "double_tap_reset": {"type": "boolean"}, + "double_tap_reset_timeout": {"$ref": "./definitions.jsonschema#/unsigned_int"}, + "led": {"$ref": "./definitions.jsonschema#/mcu_pin"} + } + }, "split": { "type": "object", "additionalProperties": false, diff --git a/platforms/chibios/boards/QMK_BLOK/configs/config.h b/platforms/chibios/boards/QMK_BLOK/configs/config.h index 26fe7cddc7de..23bb7d8c1900 100644 --- a/platforms/chibios/boards/QMK_BLOK/configs/config.h +++ b/platforms/chibios/boards/QMK_BLOK/configs/config.h @@ -58,5 +58,5 @@ # define RP2040_BOOTLOADER_DOUBLE_TAP_RESET #endif #ifndef RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT -# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U +# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500 #endif diff --git a/platforms/chibios/boards/QMK_PM2040/configs/config.h b/platforms/chibios/boards/QMK_PM2040/configs/config.h index 5ba030a556c7..0135267d06bb 100644 --- a/platforms/chibios/boards/QMK_PM2040/configs/config.h +++ b/platforms/chibios/boards/QMK_PM2040/configs/config.h @@ -57,5 +57,5 @@ # define RP2040_BOOTLOADER_DOUBLE_TAP_RESET #endif #ifndef RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT -# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U +# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500 #endif diff --git a/platforms/chibios/bootloaders/rp2040.c b/platforms/chibios/bootloaders/rp2040.c index 2e991625c9c1..fac69fe6df29 100644 --- a/platforms/chibios/bootloaders/rp2040.c +++ b/platforms/chibios/bootloaders/rp2040.c @@ -24,7 +24,7 @@ void enter_bootloader_mode_if_requested(void) {} #if defined(RP2040_BOOTLOADER_DOUBLE_TAP_RESET) # if !defined(RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT) -# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U +# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200 # endif // Needs to be located in a RAM section that is never initialized on boot to @@ -45,7 +45,7 @@ void __late_init(void) { magic_location = magic_token; // ChibiOS is not initialized at this point, so sleeping is only // possible via busy waiting. - wait_us(RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT * 1000U); + wait_us(UINT32_C(RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT) * 1000U); magic_location = 0; return; } From 12a02a54dc14ed5f2396a6ffec4f4103813e3dd8 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 12:31:55 -0600 Subject: [PATCH 02/28] Rename LED pin key more appropriately --- data/mappings/info_config.hjson | 2 +- data/schemas/keyboard.jsonschema | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson index 95bf6f128144..40009e331a3a 100644 --- a/data/mappings/info_config.hjson +++ b/data/mappings/info_config.hjson @@ -192,7 +192,7 @@ // RP2040 Bootloader "RP2040_BOOTLOADER_DOUBLE_TAP_RESET": {"info_key": "rp2040_bootloader.double_tap_reset", "value_type": "flag"}, "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT": {"info_key": "rp2040_bootloader.double_tap_reset_timeout", "value_type": "int"}, - "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED": {"info_key": "rp2040_bootloader.led"} + "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED": {"info_key": "rp2040_bootloader.double_tap_reset_led"} // Secure "SECURE_IDLE_TIMEOUT": {"info_key": "secure.idle_timeout", "value_type": "int"}, diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 35c258d4fac2..fe813ed6cefe 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -841,7 +841,7 @@ "properties": { "double_tap_reset": {"type": "boolean"}, "double_tap_reset_timeout": {"$ref": "./definitions.jsonschema#/unsigned_int"}, - "led": {"$ref": "./definitions.jsonschema#/mcu_pin"} + "double_tap_reset_led": {"$ref": "./definitions.jsonschema#/mcu_pin"} } }, "split": { From 96425617596c6edca09eea9e25cc4efded62aee9 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 12:46:54 -0600 Subject: [PATCH 03/28] Add documentation --- docs/reference_info_json.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/reference_info_json.md b/docs/reference_info_json.md index 301e4b12dd0c..3df82c5ee39d 100644 --- a/docs/reference_info_json.md +++ b/docs/reference_info_json.md @@ -754,6 +754,18 @@ Configures the [RGB Matrix](features/rgb_matrix) feature. * The value by which to increment the brightness. * Default: `16` +## RP2040 Bootloader {#rp2040-bootloader} + +* `rp2040_bootloader` + * `double_tap_reset` Boolean + * Enable the double-tap functionality to enter bootloader. + * Default: `false` + * `double_tap_reset_timout` Number + * The timeout value in which the reset button must be double-tapped in milliseconds. + * Default: `200` + * `double_tap_reset_led` Pin + * The GPIO pin connected to an LED to flash. + ## Secure {#secure} Configures the [Secure](features/secure) feature. From 42dea010bed53ccf7b0f279fde3f5e8230cd37be Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 15:14:03 -0600 Subject: [PATCH 04/28] Alphabetise options and add info helper --- data/mappings/info_config.hjson | 2 +- data/schemas/keyboard.jsonschema | 4 ++-- docs/platformdev_rp2040.md | 2 +- docs/reference_info_json.md | 4 ++-- lib/python/qmk/info.py | 15 +++++++++++++++ 5 files changed, 21 insertions(+), 6 deletions(-) diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson index 40009e331a3a..1ff5e662d787 100644 --- a/data/mappings/info_config.hjson +++ b/data/mappings/info_config.hjson @@ -191,8 +191,8 @@ // RP2040 Bootloader "RP2040_BOOTLOADER_DOUBLE_TAP_RESET": {"info_key": "rp2040_bootloader.double_tap_reset", "value_type": "flag"}, + "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED": {"info_key": "rp2040_bootloader.double_tap_reset_led"}, "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT": {"info_key": "rp2040_bootloader.double_tap_reset_timeout", "value_type": "int"}, - "RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED": {"info_key": "rp2040_bootloader.double_tap_reset_led"} // Secure "SECURE_IDLE_TIMEOUT": {"info_key": "secure.idle_timeout", "value_type": "int"}, diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index fe813ed6cefe..3a8777303c9b 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -840,8 +840,8 @@ "additionalProperties": false, "properties": { "double_tap_reset": {"type": "boolean"}, - "double_tap_reset_timeout": {"$ref": "./definitions.jsonschema#/unsigned_int"}, - "double_tap_reset_led": {"$ref": "./definitions.jsonschema#/mcu_pin"} + "double_tap_reset_led": {"$ref": "./definitions.jsonschema#/mcu_pin"}, + "double_tap_reset_timeout": {"$ref": "./definitions.jsonschema#/unsigned_int"} } }, "split": { diff --git a/docs/platformdev_rp2040.md b/docs/platformdev_rp2040.md index 346cae58dc30..1000e50e84ec 100644 --- a/docs/platformdev_rp2040.md +++ b/docs/platformdev_rp2040.md @@ -67,7 +67,7 @@ The double-tap reset mechanism is an alternate way in QMK to enter the embedded ```c #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // Timeout window in ms in which the double tap can occur. +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200 // Timeout window in ms in which the double tap can occur. #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 // Specify a optional status led by GPIO number which blinks when entering the bootloader ``` diff --git a/docs/reference_info_json.md b/docs/reference_info_json.md index 3df82c5ee39d..a4ecdb5ee195 100644 --- a/docs/reference_info_json.md +++ b/docs/reference_info_json.md @@ -760,11 +760,11 @@ Configures the [RGB Matrix](features/rgb_matrix) feature. * `double_tap_reset` Boolean * Enable the double-tap functionality to enter bootloader. * Default: `false` + * `double_tap_reset_led` Pin + * The GPIO pin connected to an LED to flash. * `double_tap_reset_timout` Number * The timeout value in which the reset button must be double-tapped in milliseconds. * Default: `200` - * `double_tap_reset_led` Pin - * The GPIO pin connected to an LED to flash. ## Secure {#secure} diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 44fed0843ce4..94a8a3501981 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -485,6 +485,19 @@ def _extract_split_encoders(info_data, config_c): info_data['split']['encoder']['right']['rotary'] = encoders +def _extract_rp2040_bootloder(info_data, config_c): + """Populate data about RP2040 bootloader + """ + timeout = int(config_c.get('RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT', '').rstrip('U')) + if timeout: + if 'rp2040_bootloader' not in info_data: + info_data['rp2040_bootloader'] = {} + + if 'double_tap_reset_timeout' in info_data['rp2040_bootloader']: + _log_warning(info_data, 'RP2040 bootloader double tap reset timeout is specified in both config.h (RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT) and info.json (rp2040_bootloader.double_tap_reset_timeout) (Value: %s), the config.h value wins.' % info_data['rp2040_bootloader']['double_tap_reset_timeout']) + + info_data['rp2040_bootloader']['double_tap_reset_timeout'] = timeout + def _extract_secure_unlock(info_data, config_c): """Populate data about the secure unlock sequence @@ -705,6 +718,8 @@ def _extract_config_h(info_data, config_c): # Pull data that easily can't be mapped in json _extract_matrix_info(info_data, config_c) + _extract_audio(info_data, config_c) + _extract_rp2040_bootloder(info_data, config_c) _extract_secure_unlock(info_data, config_c) _extract_split_handedness(info_data, config_c) _extract_split_serial(info_data, config_c) From d64ee157a1ad5cec024069c97d04216b4f1c075b Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 15:26:36 -0600 Subject: [PATCH 05/28] Use integer default value --- lib/python/qmk/info.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 94a8a3501981..d4105f41d533 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -488,7 +488,7 @@ def _extract_split_encoders(info_data, config_c): def _extract_rp2040_bootloder(info_data, config_c): """Populate data about RP2040 bootloader """ - timeout = int(config_c.get('RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT', '').rstrip('U')) + timeout = int(config_c.get('RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT', '0').rstrip('U')) if timeout: if 'rp2040_bootloader' not in info_data: info_data['rp2040_bootloader'] = {} From fa466288c52189f6da4eecf9932cfcc37c05a4bf Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 15:27:21 -0600 Subject: [PATCH 06/28] Migrate keyboards A --- keyboards/adafruit/macropad/config.h | 5 ----- keyboards/adafruit/macropad/keyboard.json | 5 +++++ keyboards/ai03/altair/config.h | 5 ----- keyboards/ai03/altair/keyboard.json | 4 ++++ keyboards/ai03/altair_x/config.h | 5 ----- keyboards/ai03/altair_x/keyboard.json | 4 ++++ keyboards/anavi/arrows/config.h | 15 +++++---------- keyboards/anavi/arrows/keyboard.json | 5 +++++ keyboards/anavi/knob1/config.h | 11 +++-------- keyboards/anavi/knob1/keyboard.json | 5 +++++ keyboards/anavi/macropad10/config.h | 10 ---------- keyboards/anavi/macropad10/keyboard.json | 5 +++++ keyboards/anavi/macropad12/config.h | 15 +++++---------- keyboards/anavi/macropad12/keyboard.json | 5 +++++ 14 files changed, 46 insertions(+), 53 deletions(-) delete mode 100644 keyboards/anavi/macropad10/config.h diff --git a/keyboards/adafruit/macropad/config.h b/keyboards/adafruit/macropad/config.h index 725530a512b8..4d17cbc138a8 100644 --- a/keyboards/adafruit/macropad/config.h +++ b/keyboards/adafruit/macropad/config.h @@ -37,11 +37,6 @@ #define SPI_MOSI_PIN GP27 #define SPI_MISO_PIN GP28 -/* Double tap the side button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP13 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - /* Audio */ #define AUDIO_PIN GP16 #define AUDIO_PWM_DRIVER PWMD0 diff --git a/keyboards/adafruit/macropad/keyboard.json b/keyboards/adafruit/macropad/keyboard.json index 94f2673f98f7..20b4e42325aa 100644 --- a/keyboards/adafruit/macropad/keyboard.json +++ b/keyboards/adafruit/macropad/keyboard.json @@ -91,6 +91,11 @@ {"matrix": [4, 2], "x": 224, "y": 64, "flags": 4} ] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP13", + "double_tap_reset_timeout": 500 + }, "bootmagic": { "matrix": [1, 2] }, diff --git a/keyboards/ai03/altair/config.h b/keyboards/ai03/altair/config.h index c54b35498b50..f2eeb2bfd2c5 100644 --- a/keyboards/ai03/altair/config.h +++ b/keyboards/ai03/altair/config.h @@ -5,8 +5,3 @@ /* VBUS-routed pin for upstream detection */ #define USB_VBUS_PIN GP0 - -/* RP2040- and hardware-specific config */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U -#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/ai03/altair/keyboard.json b/keyboards/ai03/altair/keyboard.json index ac5ff28eb1b2..602a719df9ab 100644 --- a/keyboards/ai03/altair/keyboard.json +++ b/keyboards/ai03/altair/keyboard.json @@ -21,6 +21,10 @@ "rows": ["GP11", "GP26", "GP27", "GP28", "GP10"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "bootmagic": { "matrix": [5, 0] diff --git a/keyboards/ai03/altair_x/config.h b/keyboards/ai03/altair_x/config.h index c54b35498b50..f2eeb2bfd2c5 100644 --- a/keyboards/ai03/altair_x/config.h +++ b/keyboards/ai03/altair_x/config.h @@ -5,8 +5,3 @@ /* VBUS-routed pin for upstream detection */ #define USB_VBUS_PIN GP0 - -/* RP2040- and hardware-specific config */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U -#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/ai03/altair_x/keyboard.json b/keyboards/ai03/altair_x/keyboard.json index 922496778fe8..2717685b7195 100644 --- a/keyboards/ai03/altair_x/keyboard.json +++ b/keyboards/ai03/altair_x/keyboard.json @@ -21,6 +21,10 @@ "rows": ["GP26", "GP27", "GP28", "GP10"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "bootmagic": { "matrix": [4, 0] diff --git a/keyboards/anavi/arrows/config.h b/keyboards/anavi/arrows/config.h index 59b2a11aaeac..96534e7b0b13 100644 --- a/keyboards/anavi/arrows/config.h +++ b/keyboards/anavi/arrows/config.h @@ -3,21 +3,16 @@ #pragma once -/* Double tap reset button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #ifdef BACKLIGHT_ENABLE -# define BACKLIGHT_PWM_DRIVER PWMD5 -# define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_A +# define BACKLIGHT_PWM_DRIVER PWMD5 +# define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_A #endif #define I2C1_SDA_PIN GP6 #define I2C1_SCL_PIN GP7 #ifdef OLED_ENABLE -# define OLED_DISPLAY_128X64 -# define OLED_TIMEOUT 60000 -# define OLED_BRIGHTNESS 128 +# define OLED_DISPLAY_128X64 +# define OLED_TIMEOUT 60000 +# define OLED_BRIGHTNESS 128 #endif diff --git a/keyboards/anavi/arrows/keyboard.json b/keyboards/anavi/arrows/keyboard.json index 0d09b6d5516b..25ff42b5f59d 100644 --- a/keyboards/anavi/arrows/keyboard.json +++ b/keyboards/anavi/arrows/keyboard.json @@ -38,6 +38,11 @@ "animation": "rainbow_mood" } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP3", "driver": "vendor" diff --git a/keyboards/anavi/knob1/config.h b/keyboards/anavi/knob1/config.h index 07cea802b30c..15e6dbbb38a0 100644 --- a/keyboards/anavi/knob1/config.h +++ b/keyboards/anavi/knob1/config.h @@ -3,17 +3,12 @@ #pragma once -/* Double tap reset button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define I2C_DRIVER I2CD1 #define I2C1_SDA_PIN GP6 #define I2C1_SCL_PIN GP7 #ifdef OLED_ENABLE -# define OLED_DISPLAY_128X64 -# define OLED_TIMEOUT 60000 -# define OLED_BRIGHTNESS 128 +# define OLED_DISPLAY_128X64 +# define OLED_TIMEOUT 60000 +# define OLED_BRIGHTNESS 128 #endif diff --git a/keyboards/anavi/knob1/keyboard.json b/keyboards/anavi/knob1/keyboard.json index 83d0064b8d7b..73ae0e11dad7 100644 --- a/keyboards/anavi/knob1/keyboard.json +++ b/keyboards/anavi/knob1/keyboard.json @@ -32,6 +32,11 @@ "animation": "rainbow_swirl" } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP12", "driver": "vendor" diff --git a/keyboards/anavi/macropad10/config.h b/keyboards/anavi/macropad10/config.h deleted file mode 100644 index e6f0591082c5..000000000000 --- a/keyboards/anavi/macropad10/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2022 Leon Anavi -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - - -/* Double tap reset button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/anavi/macropad10/keyboard.json b/keyboards/anavi/macropad10/keyboard.json index 6b104b7afc6d..6dd4a6ba8038 100644 --- a/keyboards/anavi/macropad10/keyboard.json +++ b/keyboards/anavi/macropad10/keyboard.json @@ -33,6 +33,11 @@ "twinkle": true } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP3", "driver": "vendor" diff --git a/keyboards/anavi/macropad12/config.h b/keyboards/anavi/macropad12/config.h index 59b2a11aaeac..96534e7b0b13 100644 --- a/keyboards/anavi/macropad12/config.h +++ b/keyboards/anavi/macropad12/config.h @@ -3,21 +3,16 @@ #pragma once -/* Double tap reset button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #ifdef BACKLIGHT_ENABLE -# define BACKLIGHT_PWM_DRIVER PWMD5 -# define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_A +# define BACKLIGHT_PWM_DRIVER PWMD5 +# define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_A #endif #define I2C1_SDA_PIN GP6 #define I2C1_SCL_PIN GP7 #ifdef OLED_ENABLE -# define OLED_DISPLAY_128X64 -# define OLED_TIMEOUT 60000 -# define OLED_BRIGHTNESS 128 +# define OLED_DISPLAY_128X64 +# define OLED_TIMEOUT 60000 +# define OLED_BRIGHTNESS 128 #endif diff --git a/keyboards/anavi/macropad12/keyboard.json b/keyboards/anavi/macropad12/keyboard.json index 7ac3e27fcd84..30d675713a0e 100644 --- a/keyboards/anavi/macropad12/keyboard.json +++ b/keyboards/anavi/macropad12/keyboard.json @@ -37,6 +37,11 @@ "animation": "rainbow_mood" } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP3", "driver": "vendor" From 0bc02d5056c8bb40d05d40d248cbe58cc14d49ca Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 15:33:34 -0600 Subject: [PATCH 07/28] Migrate keyboards B --- keyboards/bastardkb/dilemma/3x5_2/assembled/config.h | 4 ---- keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json | 5 +++++ keyboards/bastardkb/dilemma/3x5_3/config.h | 5 ----- keyboards/bastardkb/dilemma/3x5_3/keyboard.json | 5 +++++ keyboards/bastardkb/dilemma/4x6_4/config.h | 5 ----- keyboards/bastardkb/dilemma/4x6_4/keyboard.json | 5 +++++ keyboards/beekeeb/piantor/config.h | 4 ---- keyboards/beekeeb/piantor/keyboard.json | 4 ++++ keyboards/beekeeb/piantor_pro/config.h | 3 --- keyboards/beekeeb/piantor_pro/keyboard.json | 4 ++++ keyboards/budgy/config.h | 4 ---- keyboards/budgy/keyboard.json | 4 ++++ 12 files changed, 27 insertions(+), 25 deletions(-) diff --git a/keyboards/bastardkb/dilemma/3x5_2/assembled/config.h b/keyboards/bastardkb/dilemma/3x5_2/assembled/config.h index 18ce68070942..4ed3570a6bb7 100644 --- a/keyboards/bastardkb/dilemma/3x5_2/assembled/config.h +++ b/keyboards/bastardkb/dilemma/3x5_2/assembled/config.h @@ -6,7 +6,3 @@ #define SPI_MOSI_PIN GP23 #define SPI_MISO_PIN GP20 #define POINTING_DEVICE_CS_PIN GP21 - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json b/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json index c38885569189..c692de119391 100644 --- a/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json +++ b/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json @@ -5,6 +5,11 @@ "rows": ["GP4", "GP5", "GP28", "GP26"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 1000 + }, "split": { "handedness": { "pin": "GP29" diff --git a/keyboards/bastardkb/dilemma/3x5_3/config.h b/keyboards/bastardkb/dilemma/3x5_3/config.h index 7276c6181fa6..34144f8d9ff1 100644 --- a/keyboards/bastardkb/dilemma/3x5_3/config.h +++ b/keyboards/bastardkb/dilemma/3x5_3/config.h @@ -37,8 +37,3 @@ #define POINTING_DEVICE_CS_PIN GP21 #undef CIRQUE_PINNACLE_DIAMETER_MM #define CIRQUE_PINNACLE_DIAMETER_MM 40 - -/* Reset. */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/bastardkb/dilemma/3x5_3/keyboard.json b/keyboards/bastardkb/dilemma/3x5_3/keyboard.json index b09f32cf5fae..03c7c84bd755 100644 --- a/keyboards/bastardkb/dilemma/3x5_3/keyboard.json +++ b/keyboards/bastardkb/dilemma/3x5_3/keyboard.json @@ -12,6 +12,11 @@ "rows": ["GP4", "GP5", "GP27", "GP26"] }, "diode_direction": "ROW2COL", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "serial": { diff --git a/keyboards/bastardkb/dilemma/4x6_4/config.h b/keyboards/bastardkb/dilemma/4x6_4/config.h index 7276c6181fa6..34144f8d9ff1 100644 --- a/keyboards/bastardkb/dilemma/4x6_4/config.h +++ b/keyboards/bastardkb/dilemma/4x6_4/config.h @@ -37,8 +37,3 @@ #define POINTING_DEVICE_CS_PIN GP21 #undef CIRQUE_PINNACLE_DIAMETER_MM #define CIRQUE_PINNACLE_DIAMETER_MM 40 - -/* Reset. */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/bastardkb/dilemma/4x6_4/keyboard.json b/keyboards/bastardkb/dilemma/4x6_4/keyboard.json index 4613509dba6c..edb533d9b4fe 100644 --- a/keyboards/bastardkb/dilemma/4x6_4/keyboard.json +++ b/keyboards/bastardkb/dilemma/4x6_4/keyboard.json @@ -12,6 +12,11 @@ "rows": ["GP15", "GP4", "GP5", "GP27", "GP26"] }, "diode_direction": "ROW2COL", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "serial": { diff --git a/keyboards/beekeeb/piantor/config.h b/keyboards/beekeeb/piantor/config.h index e6ba4c0be932..92c8d5782aca 100644 --- a/keyboards/beekeeb/piantor/config.h +++ b/keyboards/beekeeb/piantor/config.h @@ -3,10 +3,6 @@ #pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 diff --git a/keyboards/beekeeb/piantor/keyboard.json b/keyboards/beekeeb/piantor/keyboard.json index 94463f6c6d84..ed0c59bc6fc5 100644 --- a/keyboards/beekeeb/piantor/keyboard.json +++ b/keyboards/beekeeb/piantor/keyboard.json @@ -27,6 +27,10 @@ ["GP17", "GP18", "GP16", null, null, null] ] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "matrix_pins": { diff --git a/keyboards/beekeeb/piantor_pro/config.h b/keyboards/beekeeb/piantor_pro/config.h index 4f0be6dbbea0..730f7df4c2fc 100644 --- a/keyboards/beekeeb/piantor_pro/config.h +++ b/keyboards/beekeeb/piantor_pro/config.h @@ -3,9 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 diff --git a/keyboards/beekeeb/piantor_pro/keyboard.json b/keyboards/beekeeb/piantor_pro/keyboard.json index bca723d5babf..f61b769e366b 100644 --- a/keyboards/beekeeb/piantor_pro/keyboard.json +++ b/keyboards/beekeeb/piantor_pro/keyboard.json @@ -20,6 +20,10 @@ "pid": "0x0002", "vid": "0xBEEB" }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "serial": { diff --git a/keyboards/budgy/config.h b/keyboards/budgy/config.h index 4543a048be10..00ba815d7d92 100644 --- a/keyboards/budgy/config.h +++ b/keyboards/budgy/config.h @@ -3,10 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - - #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP1 #define SERIAL_USART_RX_PIN GP0 diff --git a/keyboards/budgy/keyboard.json b/keyboards/budgy/keyboard.json index d43e02fdc04e..e45bd05f9f96 100644 --- a/keyboards/budgy/keyboard.json +++ b/keyboards/budgy/keyboard.json @@ -23,6 +23,10 @@ ["GP17", "GP18", null, null, null] ] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "matrix_pins": { From ec9f7af5d47ed16a36222308882477b08c73da44 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 15:44:52 -0600 Subject: [PATCH 08/28] Migrate keyboards C --- keyboards/cannonkeys/bastion60/config.h | 3 --- keyboards/cannonkeys/bastion60/keyboard.json | 4 ++++ keyboards/cannonkeys/bastion65/config.h | 3 --- keyboards/cannonkeys/bastion65/keyboard.json | 4 ++++ keyboards/cannonkeys/bastion75/config.h | 3 --- keyboards/cannonkeys/bastion75/keyboard.json | 4 ++++ keyboards/cannonkeys/bastiontkl/config.h | 4 ---- keyboards/cannonkeys/bastiontkl/keyboard.json | 4 ++++ keyboards/cannonkeys/brutalv2_1800/config.h | 3 --- .../cannonkeys/brutalv2_1800/keyboard.json | 4 ++++ keyboards/cannonkeys/brutalv2_60/config.h | 4 ---- .../cannonkeys/brutalv2_60/keyboard.json | 4 ++++ keyboards/cannonkeys/caerdroia/config.h | 4 ---- keyboards/cannonkeys/caerdroia/keyboard.json | 4 ++++ keyboards/cannonkeys/link/config.h | 4 +--- keyboards/cannonkeys/link/keyboard.json | 4 ++++ keyboards/cannonkeys/petrichor/config.h | 3 --- keyboards/cannonkeys/petrichor/keyboard.json | 4 ++++ keyboards/cannonkeys/reverie/config.h | 3 --- keyboards/cannonkeys/reverie/info.json | 4 ++++ keyboards/cannonkeys/typeb/config.h | 4 ---- keyboards/cannonkeys/typeb/keyboard.json | 4 ++++ keyboards/cannonkeys/vida/config.h | 3 --- keyboards/cannonkeys/vida/info.json | 4 ++++ keyboards/chouchou/config.h | 7 ------- keyboards/chouchou/keyboard.json | 4 ++++ keyboards/coban/pad12a/config.h | 7 ------- keyboards/coban/pad12a/keyboard.json | 4 ++++ keyboards/coban/pad3a/config.h | 20 ------------------- keyboards/coban/pad3a/keyboard.json | 4 ++++ keyboards/coban/pad9a/config.h | 20 ------------------- keyboards/coban/pad9a/keyboard.json | 4 ++++ keyboards/crkbd/rev4_0/config.h | 2 -- keyboards/crkbd/rev4_0/info.json | 4 ++++ keyboards/crkbd/rev4_1/config.h | 2 -- keyboards/crkbd/rev4_1/info.json | 4 ++++ 36 files changed, 73 insertions(+), 98 deletions(-) delete mode 100644 keyboards/chouchou/config.h delete mode 100644 keyboards/coban/pad12a/config.h delete mode 100644 keyboards/coban/pad3a/config.h delete mode 100644 keyboards/coban/pad9a/config.h diff --git a/keyboards/cannonkeys/bastion60/config.h b/keyboards/cannonkeys/bastion60/config.h index f410fb532578..3bf8af89c3eb 100644 --- a/keyboards/cannonkeys/bastion60/config.h +++ b/keyboards/cannonkeys/bastion60/config.h @@ -3,9 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 #define BACKLIGHT_PWM_DRIVER PWMD3 diff --git a/keyboards/cannonkeys/bastion60/keyboard.json b/keyboards/cannonkeys/bastion60/keyboard.json index 518d332ce0e0..bfa687b2db65 100644 --- a/keyboards/cannonkeys/bastion60/keyboard.json +++ b/keyboards/cannonkeys/bastion60/keyboard.json @@ -37,6 +37,10 @@ "hue_steps": 17, "led_count": 20 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cannonkeys.com", "usb": { "device_version": "0.0.1", diff --git a/keyboards/cannonkeys/bastion65/config.h b/keyboards/cannonkeys/bastion65/config.h index 640aa331343d..10059bdc94cc 100644 --- a/keyboards/cannonkeys/bastion65/config.h +++ b/keyboards/cannonkeys/bastion65/config.h @@ -17,9 +17,6 @@ along with this program. If not, see . #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 #define BACKLIGHT_PWM_DRIVER PWMD3 diff --git a/keyboards/cannonkeys/bastion65/keyboard.json b/keyboards/cannonkeys/bastion65/keyboard.json index 4d1330933109..5f9da6770378 100644 --- a/keyboards/cannonkeys/bastion65/keyboard.json +++ b/keyboards/cannonkeys/bastion65/keyboard.json @@ -38,6 +38,10 @@ "led_count": 20 }, "url": "https://cannonkeys.com", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "0.0.1", "pid": "0x0021", diff --git a/keyboards/cannonkeys/bastion75/config.h b/keyboards/cannonkeys/bastion75/config.h index 640aa331343d..10059bdc94cc 100644 --- a/keyboards/cannonkeys/bastion75/config.h +++ b/keyboards/cannonkeys/bastion75/config.h @@ -17,9 +17,6 @@ along with this program. If not, see . #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 #define BACKLIGHT_PWM_DRIVER PWMD3 diff --git a/keyboards/cannonkeys/bastion75/keyboard.json b/keyboards/cannonkeys/bastion75/keyboard.json index 3c96e4f94353..56aeacfde217 100644 --- a/keyboards/cannonkeys/bastion75/keyboard.json +++ b/keyboards/cannonkeys/bastion75/keyboard.json @@ -47,6 +47,10 @@ "rainbow_swirl": true } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layout_aliases": { "LAYOUT": "LAYOUT_all" }, diff --git a/keyboards/cannonkeys/bastiontkl/config.h b/keyboards/cannonkeys/bastiontkl/config.h index 8b8e7f9aa557..f5f11259e3f3 100644 --- a/keyboards/cannonkeys/bastiontkl/config.h +++ b/keyboards/cannonkeys/bastiontkl/config.h @@ -3,8 +3,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 - diff --git a/keyboards/cannonkeys/bastiontkl/keyboard.json b/keyboards/cannonkeys/bastiontkl/keyboard.json index 9617bce56c87..6cacddc53ba5 100644 --- a/keyboards/cannonkeys/bastiontkl/keyboard.json +++ b/keyboards/cannonkeys/bastiontkl/keyboard.json @@ -20,6 +20,10 @@ "rows": ["GP0", "GP2", "GP3", "GP28", "GP10", "GP11"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cannonkeys.com", "usb": { "device_version": "0.0.1", diff --git a/keyboards/cannonkeys/brutalv2_1800/config.h b/keyboards/cannonkeys/brutalv2_1800/config.h index 17bba21f22d8..36431cad5178 100644 --- a/keyboards/cannonkeys/brutalv2_1800/config.h +++ b/keyboards/cannonkeys/brutalv2_1800/config.h @@ -17,7 +17,4 @@ along with this program. If not, see . #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/cannonkeys/brutalv2_1800/keyboard.json b/keyboards/cannonkeys/brutalv2_1800/keyboard.json index 0fd9204be9fb..9ba31a46ce19 100644 --- a/keyboards/cannonkeys/brutalv2_1800/keyboard.json +++ b/keyboards/cannonkeys/brutalv2_1800/keyboard.json @@ -26,6 +26,10 @@ "num_lock": "GP2", "on_state": 0 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "build": { "debounce_type": "asym_eager_defer_pk" }, diff --git a/keyboards/cannonkeys/brutalv2_60/config.h b/keyboards/cannonkeys/brutalv2_60/config.h index 8b8e7f9aa557..f5f11259e3f3 100644 --- a/keyboards/cannonkeys/brutalv2_60/config.h +++ b/keyboards/cannonkeys/brutalv2_60/config.h @@ -3,8 +3,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 - diff --git a/keyboards/cannonkeys/brutalv2_60/keyboard.json b/keyboards/cannonkeys/brutalv2_60/keyboard.json index 923be17c9af7..64490ec6b47b 100644 --- a/keyboards/cannonkeys/brutalv2_60/keyboard.json +++ b/keyboards/cannonkeys/brutalv2_60/keyboard.json @@ -19,6 +19,10 @@ "rows": ["GP4", "GP5", "GP13", "GP14", "GP10"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cannonkeys.com", "usb": { "device_version": "0.0.1", diff --git a/keyboards/cannonkeys/caerdroia/config.h b/keyboards/cannonkeys/caerdroia/config.h index 582695dac682..36431cad5178 100644 --- a/keyboards/cannonkeys/caerdroia/config.h +++ b/keyboards/cannonkeys/caerdroia/config.h @@ -17,8 +17,4 @@ along with this program. If not, see . #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 - diff --git a/keyboards/cannonkeys/caerdroia/keyboard.json b/keyboards/cannonkeys/caerdroia/keyboard.json index 0fec202dea79..9c40d293440d 100644 --- a/keyboards/cannonkeys/caerdroia/keyboard.json +++ b/keyboards/cannonkeys/caerdroia/keyboard.json @@ -26,6 +26,10 @@ "scroll_lock": "GP1", "on_state": 0 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/cannonkeys/link/config.h b/keyboards/cannonkeys/link/config.h index c244f7a56b55..a36d9ffdd745 100644 --- a/keyboards/cannonkeys/link/config.h +++ b/keyboards/cannonkeys/link/config.h @@ -6,7 +6,7 @@ /* VBUS-routed pin for upstream detection */ #define USB_VBUS_PIN GP27 -#define SPLIT_HAND_PIN_LOW_IS_LEFT +#define SPLIT_HAND_PIN_LOW_IS_LEFT // Configure full duplex split comms over PIO #define SERIAL_USART_FULL_DUPLEX @@ -15,8 +15,6 @@ #define SERIAL_USART_PIN_SWAP /* RP2040- and hardware-specific config */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 /* I2C for OLEDs */ diff --git a/keyboards/cannonkeys/link/keyboard.json b/keyboards/cannonkeys/link/keyboard.json index e5692cd45878..dc12bce83927 100644 --- a/keyboards/cannonkeys/link/keyboard.json +++ b/keyboards/cannonkeys/link/keyboard.json @@ -34,6 +34,10 @@ "qmk": { "tap_keycode_delay": 10 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "bootmagic": { "matrix": [5, 5] diff --git a/keyboards/cannonkeys/petrichor/config.h b/keyboards/cannonkeys/petrichor/config.h index 4eec357f2019..d675d0845451 100644 --- a/keyboards/cannonkeys/petrichor/config.h +++ b/keyboards/cannonkeys/petrichor/config.h @@ -3,7 +3,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/cannonkeys/petrichor/keyboard.json b/keyboards/cannonkeys/petrichor/keyboard.json index 90f9886cdc5e..1ca65c0e3abc 100644 --- a/keyboards/cannonkeys/petrichor/keyboard.json +++ b/keyboards/cannonkeys/petrichor/keyboard.json @@ -32,6 +32,10 @@ "animation": "rainbow_swirl" } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cannonkeys.com", "usb": { "device_version": "0.0.1", diff --git a/keyboards/cannonkeys/reverie/config.h b/keyboards/cannonkeys/reverie/config.h index 4eec357f2019..d675d0845451 100644 --- a/keyboards/cannonkeys/reverie/config.h +++ b/keyboards/cannonkeys/reverie/config.h @@ -3,7 +3,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/cannonkeys/reverie/info.json b/keyboards/cannonkeys/reverie/info.json index 418d0a61769a..f35d66f753d3 100644 --- a/keyboards/cannonkeys/reverie/info.json +++ b/keyboards/cannonkeys/reverie/info.json @@ -14,6 +14,10 @@ "rows": ["GP26", "GP27", "GP15", "GP16", "GP17"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cannonkeys.com", "usb": { "device_version": "0.0.1", diff --git a/keyboards/cannonkeys/typeb/config.h b/keyboards/cannonkeys/typeb/config.h index 582695dac682..36431cad5178 100644 --- a/keyboards/cannonkeys/typeb/config.h +++ b/keyboards/cannonkeys/typeb/config.h @@ -17,8 +17,4 @@ along with this program. If not, see . #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 - diff --git a/keyboards/cannonkeys/typeb/keyboard.json b/keyboards/cannonkeys/typeb/keyboard.json index fb3bf0964d41..43cebd57d947 100644 --- a/keyboards/cannonkeys/typeb/keyboard.json +++ b/keyboards/cannonkeys/typeb/keyboard.json @@ -25,6 +25,10 @@ "caps_lock": "GP12", "on_state": 0 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/cannonkeys/vida/config.h b/keyboards/cannonkeys/vida/config.h index 4eec357f2019..d675d0845451 100644 --- a/keyboards/cannonkeys/vida/config.h +++ b/keyboards/cannonkeys/vida/config.h @@ -3,7 +3,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/cannonkeys/vida/info.json b/keyboards/cannonkeys/vida/info.json index c8462b2ea970..1b1ca8210873 100644 --- a/keyboards/cannonkeys/vida/info.json +++ b/keyboards/cannonkeys/vida/info.json @@ -18,6 +18,10 @@ "rows": ["GP26", "GP27", "GP15", "GP16", "GP17"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cannonkeys.com", "usb": { "device_version": "0.0.1", diff --git a/keyboards/chouchou/config.h b/keyboards/chouchou/config.h deleted file mode 100644 index 405bd8b5ff42..000000000000 --- a/keyboards/chouchou/config.h +++ /dev/null @@ -1,7 +0,0 @@ -// Copyright 2023 Dane Lipscombe (@dlip) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/chouchou/keyboard.json b/keyboards/chouchou/keyboard.json index 1d6236c2eaa3..4f678f9ba5ca 100644 --- a/keyboards/chouchou/keyboard.json +++ b/keyboards/chouchou/keyboard.json @@ -15,6 +15,10 @@ ] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "url": "https://github.com/dlip/chouchou", "usb": { "device_version": "1.0.0", diff --git a/keyboards/coban/pad12a/config.h b/keyboards/coban/pad12a/config.h deleted file mode 100644 index b6b096ad05d9..000000000000 --- a/keyboards/coban/pad12a/config.h +++ /dev/null @@ -1,7 +0,0 @@ -// Copyright 2025 RyanDam (https://github.com/RyanDam) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/coban/pad12a/keyboard.json b/keyboards/coban/pad12a/keyboard.json index dc027d46f419..3fb69115c319 100644 --- a/keyboards/coban/pad12a/keyboard.json +++ b/keyboards/coban/pad12a/keyboard.json @@ -21,6 +21,10 @@ }, "processor": "RP2040", "bootloader": "rp2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "features": { "bootmagic": true, "encoder": true, diff --git a/keyboards/coban/pad3a/config.h b/keyboards/coban/pad3a/config.h deleted file mode 100644 index 5299ccb4f1c9..000000000000 --- a/keyboards/coban/pad3a/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2021 RyanDam (https://github.com/RyanDam) - * - * 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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/coban/pad3a/keyboard.json b/keyboards/coban/pad3a/keyboard.json index b2a9c32b7742..05e397c16051 100644 --- a/keyboards/coban/pad3a/keyboard.json +++ b/keyboards/coban/pad3a/keyboard.json @@ -28,6 +28,10 @@ }, "processor": "RP2040", "bootloader": "rp2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/coban/pad9a/config.h b/keyboards/coban/pad9a/config.h deleted file mode 100644 index 7b465d2eef2b..000000000000 --- a/keyboards/coban/pad9a/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2023 RyanDam (https://github.com/RyanDam) - * - * 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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/coban/pad9a/keyboard.json b/keyboards/coban/pad9a/keyboard.json index d34f2b000b63..348b28c6f0ac 100644 --- a/keyboards/coban/pad9a/keyboard.json +++ b/keyboards/coban/pad9a/keyboard.json @@ -49,6 +49,10 @@ ], "max_brightness": 150 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cobanstationery.com", "usb": { "device_version": "1.2.0", diff --git a/keyboards/crkbd/rev4_0/config.h b/keyboards/crkbd/rev4_0/config.h index 228fc6dc075e..6309f02f3f12 100755 --- a/keyboards/crkbd/rev4_0/config.h +++ b/keyboards/crkbd/rev4_0/config.h @@ -12,6 +12,4 @@ #define I2C1_SCL_PIN GP7 /* RP2040- and hardware-specific config */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/crkbd/rev4_0/info.json b/keyboards/crkbd/rev4_0/info.json index 2eda29a53f76..78dad72af83e 100755 --- a/keyboards/crkbd/rev4_0/info.json +++ b/keyboards/crkbd/rev4_0/info.json @@ -41,6 +41,10 @@ "enabled": true, "matrix": [ 0, 1 ] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "bootmagic": { diff --git a/keyboards/crkbd/rev4_1/config.h b/keyboards/crkbd/rev4_1/config.h index 6f7d290ddcdf..290f47f880d7 100755 --- a/keyboards/crkbd/rev4_1/config.h +++ b/keyboards/crkbd/rev4_1/config.h @@ -11,6 +11,4 @@ #define I2C1_SCL_PIN GP7 /* RP2040- and hardware-specific config */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/crkbd/rev4_1/info.json b/keyboards/crkbd/rev4_1/info.json index 3732d639101c..3b7126e238c8 100755 --- a/keyboards/crkbd/rev4_1/info.json +++ b/keyboards/crkbd/rev4_1/info.json @@ -41,6 +41,10 @@ "enabled": true, "matrix": [ 0, 1 ] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "bootmagic": { From c7c299cc9d56acc14af2530b39107c31ce03c9c0 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 16:48:11 -0600 Subject: [PATCH 09/28] Migrate keyboards D --- keyboards/deemen17/de60/r1/config.h | 3 --- keyboards/deemen17/de60/r1/keyboard.json | 6 +++++- keyboards/dlip/haritev2/config.h | 3 --- keyboards/dlip/haritev2/info.json | 4 ++++ keyboards/dnworks/frltkl/config.h | 20 -------------------- keyboards/dnworks/frltkl/keyboard.json | 6 +++++- keyboards/dnworks/numpad/config.h | 20 -------------------- keyboards/dnworks/numpad/keyboard.json | 4 ++++ keyboards/dnworks/sbl/config.h | 20 -------------------- keyboards/dnworks/sbl/keyboard.json | 4 ++++ keyboards/dnworks/tkl87/config.h | 20 -------------------- keyboards/dnworks/tkl87/keyboard.json | 8 ++++++-- keyboards/dztech/tofu/ii/v1/config.h | 3 --- keyboards/dztech/tofu/ii/v1/keyboard.json | 4 ++++ keyboards/dztech/tofu/jr/v1/config.h | 3 --- keyboards/dztech/tofu/jr/v1/keyboard.json | 4 ++++ keyboards/dztech/tofu/jr/v2/config.h | 5 ----- keyboards/dztech/tofu/jr/v2/keyboard.json | 4 ++++ 18 files changed, 40 insertions(+), 101 deletions(-) delete mode 100644 keyboards/dnworks/frltkl/config.h delete mode 100644 keyboards/dnworks/numpad/config.h delete mode 100644 keyboards/dnworks/sbl/config.h delete mode 100644 keyboards/dnworks/tkl87/config.h diff --git a/keyboards/deemen17/de60/r1/config.h b/keyboards/deemen17/de60/r1/config.h index e21d4ae37329..73e5bed49282 100644 --- a/keyboards/deemen17/de60/r1/config.h +++ b/keyboards/deemen17/de60/r1/config.h @@ -16,7 +16,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define RP2040_FLASH_GENERIC_03H diff --git a/keyboards/deemen17/de60/r1/keyboard.json b/keyboards/deemen17/de60/r1/keyboard.json index 62de2691ce0c..92daad985fb8 100644 --- a/keyboards/deemen17/de60/r1/keyboard.json +++ b/keyboards/deemen17/de60/r1/keyboard.json @@ -18,7 +18,7 @@ "caps_lock": "GP24" }, "matrix_pins": { - "cols": ["GP23", "GP22", "GP21", "GP20", "GP28", "GP0", "GP8", "GP7", "GP6", "GP5", "GP4", "GP3", "GP2", "GP1"], + "cols": ["GP23", "GP22", "GP21", "GP20", "GP28", "GP0", "GP8", "GP7", "GP6", "GP5", "GP4", "GP3", "GP2", "GP1"], "rows": ["GP27", "GP26", "GP25", "GP29", "GP18"] }, "processor": "RP2040", @@ -39,6 +39,10 @@ "max_brightness": 240, "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "vid": "0xDE17", "pid": "0x60F0", diff --git a/keyboards/dlip/haritev2/config.h b/keyboards/dlip/haritev2/config.h index 119ba7cbacc1..048ddbebef0d 100644 --- a/keyboards/dlip/haritev2/config.h +++ b/keyboards/dlip/haritev2/config.h @@ -3,9 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1500U - #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP1 #define SERIAL_USART_RX_PIN GP0 diff --git a/keyboards/dlip/haritev2/info.json b/keyboards/dlip/haritev2/info.json index b7e12b89d510..af26429ac2b8 100644 --- a/keyboards/dlip/haritev2/info.json +++ b/keyboards/dlip/haritev2/info.json @@ -15,6 +15,10 @@ "rows": ["GP6", "GP7", "GP8", "GP9", "GP10"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1500 + }, "split": { "enabled": true, "serial": { diff --git a/keyboards/dnworks/frltkl/config.h b/keyboards/dnworks/frltkl/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/dnworks/frltkl/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/dnworks/frltkl/keyboard.json b/keyboards/dnworks/frltkl/keyboard.json index 1561a648a0bf..8f58519a4363 100644 --- a/keyboards/dnworks/frltkl/keyboard.json +++ b/keyboards/dnworks/frltkl/keyboard.json @@ -13,7 +13,7 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "nkro": true + "nkro": true }, "indicators": { "caps_lock": "GP27" @@ -23,6 +23,10 @@ "rows": ["GP4","GP3","GP2","GP1","GP29","GP28","GP19","GP20","GP10","GP11"], "cols": ["GP26","GP25","GP24","GP23","GP22","GP21","GP6","GP5","GP0"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layout_aliases": { "LAYOUT": "LAYOUT_all" }, diff --git a/keyboards/dnworks/numpad/config.h b/keyboards/dnworks/numpad/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/dnworks/numpad/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/dnworks/numpad/keyboard.json b/keyboards/dnworks/numpad/keyboard.json index e89c180ee671..12031017ebdf 100644 --- a/keyboards/dnworks/numpad/keyboard.json +++ b/keyboards/dnworks/numpad/keyboard.json @@ -9,6 +9,10 @@ "rows": ["GP11", "GP4", "GP3", "GP2", "GP1", "GP0", "GP24"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "0.0.1", "pid": "0x2937", diff --git a/keyboards/dnworks/sbl/config.h b/keyboards/dnworks/sbl/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/dnworks/sbl/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/dnworks/sbl/keyboard.json b/keyboards/dnworks/sbl/keyboard.json index d9c6fa1bb310..04e97a2023a7 100644 --- a/keyboards/dnworks/sbl/keyboard.json +++ b/keyboards/dnworks/sbl/keyboard.json @@ -23,6 +23,10 @@ "rows": ["GP6","GP5","GP4","GP0","GP12"], "cols": ["GP28","GP27","GP26","GP25","GP24","GP23","GP22","GP3","GP2","GP1","GP8","GP9","GP10","GP11","GP7"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layout_aliases": { "LAYOUT": "LAYOUT_all", "LAYOUT_60_tsangan_hhkb": "LAYOUT_60_ansi_tsangan_split_bs_rshift" diff --git a/keyboards/dnworks/tkl87/config.h b/keyboards/dnworks/tkl87/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/dnworks/tkl87/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/dnworks/tkl87/keyboard.json b/keyboards/dnworks/tkl87/keyboard.json index af912ae25d55..2d470f311b95 100644 --- a/keyboards/dnworks/tkl87/keyboard.json +++ b/keyboards/dnworks/tkl87/keyboard.json @@ -13,7 +13,7 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "nkro": true + "nkro": true }, "indicators": { "caps_lock": "GP27", @@ -24,6 +24,10 @@ "rows": ["GP2", "GP3", "GP4", "GP29", "GP12", "GP13"], "cols": ["GP28", "GP26", "GP25", "GP24", "GP23", "GP22", "GP21", "GP20", "GP19", "GP18", "GP17", "GP16", "GP15", "GP14", "GP6", "GP5", "GP0"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "community_layouts": ["tkl_ansi_tsangan", "tkl_iso_tsangan"], "layouts": { "LAYOUT_all": { @@ -472,7 +476,7 @@ { "matrix": [5, 12], "w": 1.5, "x": 13.5, "y": 5.5 }, { "matrix": [5, 14], "x": 15.25, "y": 5.5 }, { "matrix": [5, 15], "x": 16.25, "y": 5.5 }, - { "matrix": [5, 16], "x": 17.25, "y": 5.5 } + { "matrix": [5, 16], "x": 17.25, "y": 5.5 } ] } } diff --git a/keyboards/dztech/tofu/ii/v1/config.h b/keyboards/dztech/tofu/ii/v1/config.h index 45576fcdacce..748289d4f62c 100644 --- a/keyboards/dztech/tofu/ii/v1/config.h +++ b/keyboards/dztech/tofu/ii/v1/config.h @@ -19,9 +19,6 @@ #define I2C1_SCL_PIN GP3 #define I2C_DRIVER I2CD1 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND #define IS31FL3737_I2C_ADDRESS_2 IS31FL3737_I2C_ADDRESS_VCC diff --git a/keyboards/dztech/tofu/ii/v1/keyboard.json b/keyboards/dztech/tofu/ii/v1/keyboard.json index ca1d5608c1a9..3f6ef5884e8e 100644 --- a/keyboards/dztech/tofu/ii/v1/keyboard.json +++ b/keyboards/dztech/tofu/ii/v1/keyboard.json @@ -136,6 +136,10 @@ "max_brightness": 180, "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "1.0.0", "pid": "0x1427", diff --git a/keyboards/dztech/tofu/jr/v1/config.h b/keyboards/dztech/tofu/jr/v1/config.h index bc559ee6f357..daffaf53a2e9 100644 --- a/keyboards/dztech/tofu/jr/v1/config.h +++ b/keyboards/dztech/tofu/jr/v1/config.h @@ -20,9 +20,6 @@ #define I2C1_SCL_PIN GP3 #define I2C_DRIVER I2CD1 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND #define IS31FL3737_I2C_ADDRESS_2 IS31FL3737_I2C_ADDRESS_VCC diff --git a/keyboards/dztech/tofu/jr/v1/keyboard.json b/keyboards/dztech/tofu/jr/v1/keyboard.json index 5eb20be00db7..aff4fecb869c 100644 --- a/keyboards/dztech/tofu/jr/v1/keyboard.json +++ b/keyboards/dztech/tofu/jr/v1/keyboard.json @@ -138,6 +138,10 @@ "max_brightness": 180, "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "1.0.0", "pid": "0x1426", diff --git a/keyboards/dztech/tofu/jr/v2/config.h b/keyboards/dztech/tofu/jr/v2/config.h index 935a2ab4376b..cd12a5425857 100644 --- a/keyboards/dztech/tofu/jr/v2/config.h +++ b/keyboards/dztech/tofu/jr/v2/config.h @@ -17,8 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 8) - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - - diff --git a/keyboards/dztech/tofu/jr/v2/keyboard.json b/keyboards/dztech/tofu/jr/v2/keyboard.json index d8de9b956fb1..1bbb4b07e33e 100644 --- a/keyboards/dztech/tofu/jr/v2/keyboard.json +++ b/keyboards/dztech/tofu/jr/v2/keyboard.json @@ -40,6 +40,10 @@ "twinkle": true } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP2", "driver": "vendor" From 9ee4fc072ade46009ab70f019d63fc0398575053 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 16:57:32 -0600 Subject: [PATCH 10/28] Migrate keyboards E --- keyboards/era/era65/config.h | 3 --- keyboards/era/era65/keyboard.json | 4 ++++ keyboards/era/linx3/fave65s/config.h | 8 -------- keyboards/era/linx3/fave65s/keyboard.json | 4 ++++ keyboards/era/linx3/n86/config.h | 8 -------- keyboards/era/linx3/n86/keyboard.json | 4 ++++ keyboards/era/linx3/n87/config.h | 8 -------- keyboards/era/linx3/n87/keyboard.json | 4 ++++ keyboards/era/linx3/n8x/config.h | 6 +----- keyboards/era/linx3/n8x/keyboard.json | 4 ++++ keyboards/era/sirind/brick65s/config.h | 8 -------- keyboards/era/sirind/brick65s/keyboard.json | 4 ++++ keyboards/era/sirind/chickpad/config.h | 8 -------- keyboards/era/sirind/chickpad/keyboard.json | 4 ++++ keyboards/era/sirind/tomak/config.h | 6 +----- keyboards/era/sirind/tomak/keyboard.json | 4 ++++ keyboards/era/sirind/tomak79h/config.h | 5 ++++- keyboards/era/sirind/tomak79h/keyboard.json | 4 ++++ keyboards/era/sirind/tomak79s/config.h | 5 ++++- keyboards/era/sirind/tomak79s/keyboard.json | 4 ++++ 20 files changed, 50 insertions(+), 55 deletions(-) delete mode 100644 keyboards/era/linx3/fave65s/config.h delete mode 100644 keyboards/era/linx3/n86/config.h delete mode 100644 keyboards/era/linx3/n87/config.h delete mode 100644 keyboards/era/sirind/brick65s/config.h delete mode 100644 keyboards/era/sirind/chickpad/config.h diff --git a/keyboards/era/era65/config.h b/keyboards/era/era65/config.h index 6a1a27f0778f..9ed511b03de5 100644 --- a/keyboards/era/era65/config.h +++ b/keyboards/era/era65/config.h @@ -21,8 +21,5 @@ #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U // Timeout window in ms in which the double tap can occur. - #define BACKLIGHT_PWM_DRIVER PWMD0 #define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_A diff --git a/keyboards/era/era65/keyboard.json b/keyboards/era/era65/keyboard.json index 152d7e318697..366608fc0c30 100644 --- a/keyboards/era/era65/keyboard.json +++ b/keyboards/era/era65/keyboard.json @@ -30,6 +30,10 @@ "rows": ["GP1", "GP2", "GP4", "GP10", "GP11"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "usb": { "device_version": "1.0.4", "pid": "0x0001", diff --git a/keyboards/era/linx3/fave65s/config.h b/keyboards/era/linx3/fave65s/config.h deleted file mode 100644 index 28d7f4f370df..000000000000 --- a/keyboards/era/linx3/fave65s/config.h +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2024 Hyojin Bak (@eerraa) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 2000U diff --git a/keyboards/era/linx3/fave65s/keyboard.json b/keyboards/era/linx3/fave65s/keyboard.json index af44df9850c1..900074b3f602 100644 --- a/keyboards/era/linx3/fave65s/keyboard.json +++ b/keyboards/era/linx3/fave65s/keyboard.json @@ -109,6 +109,10 @@ ], "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 2000 + }, "usb": { "device_version": "1.0.0", "pid": "0x0011", diff --git a/keyboards/era/linx3/n86/config.h b/keyboards/era/linx3/n86/config.h deleted file mode 100644 index ee5043c48c47..000000000000 --- a/keyboards/era/linx3/n86/config.h +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2024 Hyojin Bak (@eerraa) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 2000U diff --git a/keyboards/era/linx3/n86/keyboard.json b/keyboards/era/linx3/n86/keyboard.json index 354a358470af..cfd2c1354e92 100644 --- a/keyboards/era/linx3/n86/keyboard.json +++ b/keyboards/era/linx3/n86/keyboard.json @@ -161,6 +161,10 @@ ], "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 2000 + }, "usb": { "device_version": "1.0.0", "pid": "0x0008", diff --git a/keyboards/era/linx3/n87/config.h b/keyboards/era/linx3/n87/config.h deleted file mode 100644 index ee5043c48c47..000000000000 --- a/keyboards/era/linx3/n87/config.h +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2024 Hyojin Bak (@eerraa) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 2000U diff --git a/keyboards/era/linx3/n87/keyboard.json b/keyboards/era/linx3/n87/keyboard.json index 3123b5b2da85..8605f66ea7d4 100644 --- a/keyboards/era/linx3/n87/keyboard.json +++ b/keyboards/era/linx3/n87/keyboard.json @@ -162,6 +162,10 @@ ], "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 2000 + }, "usb": { "device_version": "1.0.0", "pid": "0x0009", diff --git a/keyboards/era/linx3/n8x/config.h b/keyboards/era/linx3/n8x/config.h index 28548bad000c..ea91d0ac92c9 100644 --- a/keyboards/era/linx3/n8x/config.h +++ b/keyboards/era/linx3/n8x/config.h @@ -1,11 +1,7 @@ // Copyright 2024 Hyojin Bak (@eerraa) // SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 2000U +#pragma once /* BACKLIGHT PWM */ #define BACKLIGHT_PWM_DRIVER PWMD1 diff --git a/keyboards/era/linx3/n8x/keyboard.json b/keyboards/era/linx3/n8x/keyboard.json index 0a896b250f7b..50b653d6d1bb 100644 --- a/keyboards/era/linx3/n8x/keyboard.json +++ b/keyboards/era/linx3/n8x/keyboard.json @@ -29,6 +29,10 @@ "rows": ["GP4", "GP5", "GP6", "GP7", "GP10", "GP9"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 2000 + }, "usb": { "device_version": "1.0.0", "pid": "0x0007", diff --git a/keyboards/era/sirind/brick65s/config.h b/keyboards/era/sirind/brick65s/config.h deleted file mode 100644 index 6bcd58129050..000000000000 --- a/keyboards/era/sirind/brick65s/config.h +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2024 Hyojin Bak (@eerraa) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/era/sirind/brick65s/keyboard.json b/keyboards/era/sirind/brick65s/keyboard.json index 03a0d2857dff..06e66a2d6058 100644 --- a/keyboards/era/sirind/brick65s/keyboard.json +++ b/keyboards/era/sirind/brick65s/keyboard.json @@ -27,6 +27,10 @@ ], "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "usb": { "device_version": "1.0.0", "pid": "0x0012", diff --git a/keyboards/era/sirind/chickpad/config.h b/keyboards/era/sirind/chickpad/config.h deleted file mode 100644 index 4a8c7d1a6b63..000000000000 --- a/keyboards/era/sirind/chickpad/config.h +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2024 Hyojin Bak (@eerraa) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/era/sirind/chickpad/keyboard.json b/keyboards/era/sirind/chickpad/keyboard.json index c662d8241aaf..0cd35662188c 100644 --- a/keyboards/era/sirind/chickpad/keyboard.json +++ b/keyboards/era/sirind/chickpad/keyboard.json @@ -88,6 +88,10 @@ ], "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "usb": { "device_version": "1.0.0", "pid": "0x0015", diff --git a/keyboards/era/sirind/tomak/config.h b/keyboards/era/sirind/tomak/config.h index ac531cf18bc1..73d0f1e02bb1 100644 --- a/keyboards/era/sirind/tomak/config.h +++ b/keyboards/era/sirind/tomak/config.h @@ -1,6 +1,6 @@ // Copyright 2023 Hyojin Bak (@eerraa) // SPDX-License-Identifier: GPL-2.0-or-later - + #pragma once /* Split configuration */ @@ -9,7 +9,3 @@ #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 2000U diff --git a/keyboards/era/sirind/tomak/keyboard.json b/keyboards/era/sirind/tomak/keyboard.json index 9f4993614b9f..3130cfd3645f 100644 --- a/keyboards/era/sirind/tomak/keyboard.json +++ b/keyboards/era/sirind/tomak/keyboard.json @@ -171,6 +171,10 @@ "sleep": true, "split_count": [40, 59] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 2000 + }, "split": { "bootmagic": { "matrix": [6, 0] diff --git a/keyboards/era/sirind/tomak79h/config.h b/keyboards/era/sirind/tomak79h/config.h index 4b1caf25f74d..dcced081d0a2 100644 --- a/keyboards/era/sirind/tomak79h/config.h +++ b/keyboards/era/sirind/tomak79h/config.h @@ -1,6 +1,6 @@ // Copyright 2024 Hyojin Bak (@eerraa) // SPDX-License-Identifier: GPL-2.0-or-later - + #pragma once /* Split configuration */ @@ -9,7 +9,10 @@ #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP +<<<<<<< HEAD /* Reset */ #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U +======= +>>>>>>> 33252b93ee (Migrate keyboards E) diff --git a/keyboards/era/sirind/tomak79h/keyboard.json b/keyboards/era/sirind/tomak79h/keyboard.json index 1caffa2dff50..b59d01f636f3 100644 --- a/keyboards/era/sirind/tomak79h/keyboard.json +++ b/keyboards/era/sirind/tomak79h/keyboard.json @@ -172,6 +172,10 @@ "sleep": true, "split_count": [41, 55] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "bootmagic": { "matrix": [6, 0] diff --git a/keyboards/era/sirind/tomak79s/config.h b/keyboards/era/sirind/tomak79s/config.h index 4b1caf25f74d..dcced081d0a2 100644 --- a/keyboards/era/sirind/tomak79s/config.h +++ b/keyboards/era/sirind/tomak79s/config.h @@ -1,6 +1,6 @@ // Copyright 2024 Hyojin Bak (@eerraa) // SPDX-License-Identifier: GPL-2.0-or-later - + #pragma once /* Split configuration */ @@ -9,7 +9,10 @@ #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP +<<<<<<< HEAD /* Reset */ #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U +======= +>>>>>>> 33252b93ee (Migrate keyboards E) diff --git a/keyboards/era/sirind/tomak79s/keyboard.json b/keyboards/era/sirind/tomak79s/keyboard.json index d28c96e56547..65b4610e4429 100644 --- a/keyboards/era/sirind/tomak79s/keyboard.json +++ b/keyboards/era/sirind/tomak79s/keyboard.json @@ -178,6 +178,10 @@ "sleep": true, "split_count": [43, 59] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "bootmagic": { "matrix": [6, 0] From 11ce439afe8c9a3415b31b87df96bdccdcb4a5b8 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 16:58:41 -0600 Subject: [PATCH 11/28] Migrate keyboards F --- keyboards/fs_streampad/config.h | 7 ------- keyboards/fs_streampad/keyboard.json | 4 ++++ 2 files changed, 4 insertions(+), 7 deletions(-) delete mode 100644 keyboards/fs_streampad/config.h diff --git a/keyboards/fs_streampad/config.h b/keyboards/fs_streampad/config.h deleted file mode 100644 index 567c985a63bf..000000000000 --- a/keyboards/fs_streampad/config.h +++ /dev/null @@ -1,7 +0,0 @@ -// Copyright 2023 Matthijs Muller -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/fs_streampad/keyboard.json b/keyboards/fs_streampad/keyboard.json index 33604f70aa32..dacd41636b68 100644 --- a/keyboards/fs_streampad/keyboard.json +++ b/keyboards/fs_streampad/keyboard.json @@ -86,5 +86,9 @@ {"matrix": [2, 1], "flags": 4, "x": 112, "y": 64}, {"matrix": [2, 2], "flags": 4, "x": 224, "y": 64} ] + }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 } } From e800b740d1e8fffa602d0beca1bf09471db94241 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 17:00:05 -0600 Subject: [PATCH 12/28] Migrate keyboards G --- keyboards/gl516/xr63gl/config.h | 3 --- keyboards/gl516/xr63gl/keyboard.json | 4 ++++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/keyboards/gl516/xr63gl/config.h b/keyboards/gl516/xr63gl/config.h index d0af2e5b1d81..576069315854 100644 --- a/keyboards/gl516/xr63gl/config.h +++ b/keyboards/gl516/xr63gl/config.h @@ -20,6 +20,3 @@ //#define NO_ACTION_ONESHOT #define MATRIX_MASKED - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/gl516/xr63gl/keyboard.json b/keyboards/gl516/xr63gl/keyboard.json index e36b0622d6ff..87fe97557eef 100644 --- a/keyboards/gl516/xr63gl/keyboard.json +++ b/keyboards/gl516/xr63gl/keyboard.json @@ -15,6 +15,10 @@ "rows": ["GP26", "GP27", "GP28", "GP29", "GP0", "GP3", "GP4", "GP2", "GP1"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "1.0.0", "pid": "0x0001", From 057df438c48d6fdb5b57fbfb9c7b671fa1529587 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 17:04:02 -0600 Subject: [PATCH 13/28] Migrate keyboards H --- keyboards/handwired/erikpeyronson/erkbd/config.h | 3 --- keyboards/handwired/erikpeyronson/erkbd/keyboard.json | 4 ++++ keyboards/handwired/footy/config.h | 5 ----- keyboards/handwired/footy/keyboard.json | 4 ++++ keyboards/handwired/onekey/kb2040/config.h | 4 ---- keyboards/handwired/onekey/kb2040/keyboard.json | 5 +++++ keyboards/handwired/onekey/rp2040/config.h | 4 ---- keyboards/handwired/onekey/rp2040/keyboard.json | 5 +++++ 8 files changed, 18 insertions(+), 16 deletions(-) delete mode 100644 keyboards/handwired/footy/config.h diff --git a/keyboards/handwired/erikpeyronson/erkbd/config.h b/keyboards/handwired/erikpeyronson/erkbd/config.h index acbafbfaa722..545cbe350038 100644 --- a/keyboards/handwired/erikpeyronson/erkbd/config.h +++ b/keyboards/handwired/erikpeyronson/erkbd/config.h @@ -3,9 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define I2C_DRIVER I2CD1 #define OLED_IC OLED_IC_SH1106 #define OLED_COLUMN_OFFSET 2 diff --git a/keyboards/handwired/erikpeyronson/erkbd/keyboard.json b/keyboards/handwired/erikpeyronson/erkbd/keyboard.json index d3ef5147f43a..fab250034597 100644 --- a/keyboards/handwired/erikpeyronson/erkbd/keyboard.json +++ b/keyboards/handwired/erikpeyronson/erkbd/keyboard.json @@ -20,6 +20,10 @@ "rows": ["GP4", "GP5", "GP6", "GP7"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "bootmagic": { "matrix": [4, 5] diff --git a/keyboards/handwired/footy/config.h b/keyboards/handwired/footy/config.h deleted file mode 100644 index 5a081f79d69a..000000000000 --- a/keyboards/handwired/footy/config.h +++ /dev/null @@ -1,5 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -#pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/handwired/footy/keyboard.json b/keyboards/handwired/footy/keyboard.json index eef8c2503868..02ea39fc0051 100644 --- a/keyboards/handwired/footy/keyboard.json +++ b/keyboards/handwired/footy/keyboard.json @@ -17,6 +17,10 @@ "rows": ["GP14"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://workshop.cjpais.com/projects/footy", "usb": { "device_version": "1.0.0", diff --git a/keyboards/handwired/onekey/kb2040/config.h b/keyboards/handwired/onekey/kb2040/config.h index 7ddc2ed5faa4..899569cd59ad 100644 --- a/keyboards/handwired/onekey/kb2040/config.h +++ b/keyboards/handwired/onekey/kb2040/config.h @@ -6,10 +6,6 @@ #define QMK_WAITING_TEST_BUSY_PIN GP8 #define QMK_WAITING_TEST_YIELD_PIN GP9 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - // settings for the oled keyboard demo with Adafruit 0.91" OLED display on the Stemma QT port #define I2C_DRIVER I2CD0 #define I2C1_SDA_PIN GP12 diff --git a/keyboards/handwired/onekey/kb2040/keyboard.json b/keyboards/handwired/onekey/kb2040/keyboard.json index 3c0993422718..0b3578aedaed 100644 --- a/keyboards/handwired/onekey/kb2040/keyboard.json +++ b/keyboards/handwired/onekey/kb2040/keyboard.json @@ -5,6 +5,11 @@ "cols": ["GP4"], "rows": ["GP5"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP25", + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP17", "driver": "vendor" diff --git a/keyboards/handwired/onekey/rp2040/config.h b/keyboards/handwired/onekey/rp2040/config.h index 974fc688d3c6..153eea68e081 100644 --- a/keyboards/handwired/onekey/rp2040/config.h +++ b/keyboards/handwired/onekey/rp2040/config.h @@ -6,10 +6,6 @@ #define QMK_WAITING_TEST_BUSY_PIN GP8 #define QMK_WAITING_TEST_YIELD_PIN GP9 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_B #define AUDIO_PIN GP16 diff --git a/keyboards/handwired/onekey/rp2040/keyboard.json b/keyboards/handwired/onekey/rp2040/keyboard.json index 40eb8962322a..1c1b50f5b1e7 100644 --- a/keyboards/handwired/onekey/rp2040/keyboard.json +++ b/keyboards/handwired/onekey/rp2040/keyboard.json @@ -11,5 +11,10 @@ }, "ws2812": { "pin": "GP25" + }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP25", + "double_tap_reset_timeout": 500 } } From fa411c2e3024d67674a947ddd1c4bb6c990ffbf5 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 17:05:39 -0600 Subject: [PATCH 14/28] Migrate keyboards J --- keyboards/janus/config.h | 5 ----- keyboards/janus/keyboard.json | 5 +++++ 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/janus/config.h b/keyboards/janus/config.h index 605d9b947744..70193c15c5ca 100644 --- a/keyboards/janus/config.h +++ b/keyboards/janus/config.h @@ -8,8 +8,3 @@ #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 - -/* Double tap reset button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/janus/keyboard.json b/keyboards/janus/keyboard.json index 4a82149712c6..9664dc2f8a13 100644 --- a/keyboards/janus/keyboard.json +++ b/keyboards/janus/keyboard.json @@ -22,6 +22,11 @@ "mousekey": true, "nkro": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "serial": { From aa52b16a89304b650e581efa5120fbd01b2bb3dd Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 17:15:21 -0600 Subject: [PATCH 15/28] Migrate keyboards K --- keyboards/kbdfans/odinmini/config.h | 3 --- keyboards/kbdfans/odinmini/keyboard.json | 6 +++++- keyboards/keebart/sofle_choc_pro/config.h | 2 -- .../keebart/sofle_choc_pro/keyboard.json | 4 ++++ keyboards/keebio/cepstrum/rev1/config.h | 3 --- keyboards/keebio/cepstrum/rev1/keyboard.json | 4 ++++ keyboards/keebio/chiri_ce/rev1/config.h | 3 --- keyboards/keebio/chiri_ce/rev1/keyboard.json | 4 ++++ keyboards/keebio/chocopad/rev2/config.h | 7 ------- keyboards/keebio/chocopad/rev2/keyboard.json | 4 ++++ keyboards/keebio/iris/rev8/config.h | 3 --- keyboards/keebio/iris/rev8/keyboard.json | 4 ++++ keyboards/keebio/iris_ce/rev1/config.h | 2 -- keyboards/keebio/iris_ce/rev1/keyboard.json | 4 ++++ keyboards/keebio/irispad/rev8/config.h | 3 --- keyboards/keebio/irispad/rev8/keyboard.json | 4 ++++ keyboards/keebio/nyquist/rev4/config.h | 3 --- keyboards/keebio/nyquist/rev4/keyboard.json | 4 ++++ keyboards/keebio/nyquist/rev5/config.h | 3 --- keyboards/keebio/nyquist/rev5/keyboard.json | 4 ++++ keyboards/keebio/nyquistpad/config.h | 7 ------- keyboards/keebio/nyquistpad/keyboard.json | 5 ++++- keyboards/keebio/sinc/rev3/config.h | 3 --- keyboards/keebio/sinc/rev3/keyboard.json | 4 ++++ keyboards/keebio/sinc/rev4/config.h | 3 --- keyboards/keebio/sinc/rev4/keyboard.json | 4 ++++ keyboards/kiserdesigns/madeline/config.h | 4 ---- keyboards/kiserdesigns/madeline/keyboard.json | 6 ++++++ keyboards/kradoindustries/kousa/config.h | 21 ------------------- keyboards/kradoindustries/kousa/keyboard.json | 6 ++++-- 30 files changed, 63 insertions(+), 74 deletions(-) delete mode 100644 keyboards/keebio/chocopad/rev2/config.h delete mode 100644 keyboards/keebio/nyquistpad/config.h delete mode 100644 keyboards/kradoindustries/kousa/config.h diff --git a/keyboards/kbdfans/odinmini/config.h b/keyboards/kbdfans/odinmini/config.h index c189238244e4..05ff565f8396 100644 --- a/keyboards/kbdfans/odinmini/config.h +++ b/keyboards/kbdfans/odinmini/config.h @@ -17,6 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 8) - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/kbdfans/odinmini/keyboard.json b/keyboards/kbdfans/odinmini/keyboard.json index e5d43d278a5b..15aeb644349a 100644 --- a/keyboards/kbdfans/odinmini/keyboard.json +++ b/keyboards/kbdfans/odinmini/keyboard.json @@ -39,6 +39,10 @@ "saturation_steps": 8, "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP12", "driver": "vendor" @@ -108,7 +112,7 @@ {"label": "5", "matrix": [2, 15], "x": 17.5, "y": 2}, {"label": "6", "matrix": [2, 16], "x": 18.5, "y": 2}, {"label": "Shift", "matrix": [3, 0], "w": 1.25, "x": 0, "y": 3}, - {"matrix": [4, 3], "w": 2.25, "x": 1.25, "y": 3}, + {"matrix": [4, 3], "w": 2.25, "x": 1.25, "y": 3}, {"label": "Z", "matrix": [3, 1], "x": 2.25, "y": 3}, {"label": "X", "matrix": [3, 2], "x": 3.25, "y": 3}, {"label": "C", "matrix": [3, 3], "x": 4.25, "y": 3}, diff --git a/keyboards/keebart/sofle_choc_pro/config.h b/keyboards/keebart/sofle_choc_pro/config.h index 5c9b6ff8f15e..fee20ed64025 100644 --- a/keyboards/keebart/sofle_choc_pro/config.h +++ b/keyboards/keebart/sofle_choc_pro/config.h @@ -5,6 +5,4 @@ #define USB_VBUS_PIN GP13 /* RP2040- and hardware-specific config */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/keebart/sofle_choc_pro/keyboard.json b/keyboards/keebart/sofle_choc_pro/keyboard.json index a1ba222388d2..834316f6a895 100644 --- a/keyboards/keebart/sofle_choc_pro/keyboard.json +++ b/keyboards/keebart/sofle_choc_pro/keyboard.json @@ -135,6 +135,10 @@ "sleep": true, "split_count": [30, 30] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "bootmagic": { "matrix": [5, 0] diff --git a/keyboards/keebio/cepstrum/rev1/config.h b/keyboards/keebio/cepstrum/rev1/config.h index 5ece3961043f..b6c69da4bac8 100644 --- a/keyboards/keebio/cepstrum/rev1/config.h +++ b/keyboards/keebio/cepstrum/rev1/config.h @@ -10,9 +10,6 @@ #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define I2C_DRIVER I2CD2 #define I2C1_SCL_PIN GP22 #define I2C1_SDA_PIN GP23 diff --git a/keyboards/keebio/cepstrum/rev1/keyboard.json b/keyboards/keebio/cepstrum/rev1/keyboard.json index 26289f623611..09b99bef9448 100644 --- a/keyboards/keebio/cepstrum/rev1/keyboard.json +++ b/keyboards/keebio/cepstrum/rev1/keyboard.json @@ -7,6 +7,10 @@ "features": { "rgb_matrix": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/keebio/chiri_ce/rev1/config.h b/keyboards/keebio/chiri_ce/rev1/config.h index e9d993430176..8df3c1e78f6d 100644 --- a/keyboards/keebio/chiri_ce/rev1/config.h +++ b/keyboards/keebio/chiri_ce/rev1/config.h @@ -10,9 +10,6 @@ #define SERIAL_USART_RX_PIN GP13 #define SERIAL_USART_PIN_SWAP -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define I2C_DRIVER I2CD2 #define I2C1_SDA_PIN GP10 #define I2C1_SCL_PIN GP11 diff --git a/keyboards/keebio/chiri_ce/rev1/keyboard.json b/keyboards/keebio/chiri_ce/rev1/keyboard.json index aea1fb1d6f86..3b696fd1283f 100644 --- a/keyboards/keebio/chiri_ce/rev1/keyboard.json +++ b/keyboards/keebio/chiri_ce/rev1/keyboard.json @@ -113,6 +113,10 @@ "split_count": [22, 22], "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "bootmagic": { "matrix": [4, 0] diff --git a/keyboards/keebio/chocopad/rev2/config.h b/keyboards/keebio/chocopad/rev2/config.h deleted file mode 100644 index 8b36fb4f3a70..000000000000 --- a/keyboards/keebio/chocopad/rev2/config.h +++ /dev/null @@ -1,7 +0,0 @@ -// Copyright 2023 Danny Nguyen (danny@keeb.io) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/keebio/chocopad/rev2/keyboard.json b/keyboards/keebio/chocopad/rev2/keyboard.json index 7cc5ef518f9d..22ddc8c04786 100644 --- a/keyboards/keebio/chocopad/rev2/keyboard.json +++ b/keyboards/keebio/chocopad/rev2/keyboard.json @@ -16,6 +16,10 @@ "cols": ["GP20", "GP19", "GP29", "GP0"], "rows": ["GP28", "GP18", "GP17", "GP16"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "ws2812": { "pin": "GP15", "driver": "vendor" diff --git a/keyboards/keebio/iris/rev8/config.h b/keyboards/keebio/iris/rev8/config.h index e9eb51298100..927c6f727a13 100644 --- a/keyboards/keebio/iris/rev8/config.h +++ b/keyboards/keebio/iris/rev8/config.h @@ -10,9 +10,6 @@ #define SERIAL_USART_RX_PIN GP13 #define SERIAL_USART_PIN_SWAP -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define I2C_DRIVER I2CD2 #define I2C1_SDA_PIN GP10 #define I2C1_SCL_PIN GP11 diff --git a/keyboards/keebio/iris/rev8/keyboard.json b/keyboards/keebio/iris/rev8/keyboard.json index 7ff198afa7df..854531c8ad6a 100644 --- a/keyboards/keebio/iris/rev8/keyboard.json +++ b/keyboards/keebio/iris/rev8/keyboard.json @@ -22,6 +22,10 @@ "cols": ["GP2", "GP3", "GP29", "GP27", "GP6", "GP5"], "rows": ["GP0", "GP1", "GP7", "GP16", "GP28"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/keebio/iris_ce/rev1/config.h b/keyboards/keebio/iris_ce/rev1/config.h index 2a9d57b061e4..63a6c606112c 100644 --- a/keyboards/keebio/iris_ce/rev1/config.h +++ b/keyboards/keebio/iris_ce/rev1/config.h @@ -8,8 +8,6 @@ #define SERIAL_USART_TX_PIN GP12 #define SERIAL_USART_RX_PIN GP13 #define SERIAL_USART_PIN_SWAP -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U #define I2C_DRIVER I2CD2 #define I2C1_SDA_PIN GP10 #define I2C1_SCL_PIN GP11 diff --git a/keyboards/keebio/iris_ce/rev1/keyboard.json b/keyboards/keebio/iris_ce/rev1/keyboard.json index 5276d626b12f..5e11cc16c043 100644 --- a/keyboards/keebio/iris_ce/rev1/keyboard.json +++ b/keyboards/keebio/iris_ce/rev1/keyboard.json @@ -133,6 +133,10 @@ "split_count": [34, 34], "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/keebio/irispad/rev8/config.h b/keyboards/keebio/irispad/rev8/config.h index c0407f20bbb6..cc4b9c9ebece 100644 --- a/keyboards/keebio/irispad/rev8/config.h +++ b/keyboards/keebio/irispad/rev8/config.h @@ -3,9 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define I2C_DRIVER I2CD2 #define I2C1_SDA_PIN GP10 #define I2C1_SCL_PIN GP11 diff --git a/keyboards/keebio/irispad/rev8/keyboard.json b/keyboards/keebio/irispad/rev8/keyboard.json index 9845ebc9fd9e..7b6651007fca 100644 --- a/keyboards/keebio/irispad/rev8/keyboard.json +++ b/keyboards/keebio/irispad/rev8/keyboard.json @@ -106,6 +106,10 @@ "max_brightness": 180, "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "usb": { "device_version": "8.0.0", "pid": "0x8356" diff --git a/keyboards/keebio/nyquist/rev4/config.h b/keyboards/keebio/nyquist/rev4/config.h index 0a0f78812816..7c97e6e50879 100644 --- a/keyboards/keebio/nyquist/rev4/config.h +++ b/keyboards/keebio/nyquist/rev4/config.h @@ -9,6 +9,3 @@ #define SERIAL_USART_TX_PIN GP8 #define SERIAL_USART_RX_PIN GP9 #define SERIAL_USART_PIN_SWAP - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/keebio/nyquist/rev4/keyboard.json b/keyboards/keebio/nyquist/rev4/keyboard.json index cb5c3a39f91c..92b41bd76d80 100644 --- a/keyboards/keebio/nyquist/rev4/keyboard.json +++ b/keyboards/keebio/nyquist/rev4/keyboard.json @@ -12,6 +12,10 @@ "extrakey": true, "rgb_matrix": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "encoder": { diff --git a/keyboards/keebio/nyquist/rev5/config.h b/keyboards/keebio/nyquist/rev5/config.h index f05cd8695f39..11035fcf1b1a 100644 --- a/keyboards/keebio/nyquist/rev5/config.h +++ b/keyboards/keebio/nyquist/rev5/config.h @@ -9,6 +9,3 @@ #define SERIAL_USART_TX_PIN GP8 #define SERIAL_USART_RX_PIN GP9 #define SERIAL_USART_PIN_SWAP - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/keebio/nyquist/rev5/keyboard.json b/keyboards/keebio/nyquist/rev5/keyboard.json index 6ff3dd382172..b5ff626e6c90 100644 --- a/keyboards/keebio/nyquist/rev5/keyboard.json +++ b/keyboards/keebio/nyquist/rev5/keyboard.json @@ -13,6 +13,10 @@ "extrakey": true, "rgb_matrix": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "bootmagic": { "matrix": [9, 0] diff --git a/keyboards/keebio/nyquistpad/config.h b/keyboards/keebio/nyquistpad/config.h deleted file mode 100644 index 8b36fb4f3a70..000000000000 --- a/keyboards/keebio/nyquistpad/config.h +++ /dev/null @@ -1,7 +0,0 @@ -// Copyright 2023 Danny Nguyen (danny@keeb.io) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/keebio/nyquistpad/keyboard.json b/keyboards/keebio/nyquistpad/keyboard.json index 1999e9eaa82f..cf07f83a5855 100644 --- a/keyboards/keebio/nyquistpad/keyboard.json +++ b/keyboards/keebio/nyquistpad/keyboard.json @@ -31,7 +31,10 @@ "driver": "vendor", "pin": "GP28" }, - + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "layout_aliases": { "LAYOUT": "LAYOUT_ortho_5x6" }, diff --git a/keyboards/keebio/sinc/rev3/config.h b/keyboards/keebio/sinc/rev3/config.h index 3771f8da1d7a..da25bc1add4e 100644 --- a/keyboards/keebio/sinc/rev3/config.h +++ b/keyboards/keebio/sinc/rev3/config.h @@ -21,9 +21,6 @@ along with this program. If not, see . #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define I2C_DRIVER I2CD1 #define I2C1_SCL_PIN GP22 #define I2C1_SDA_PIN GP23 diff --git a/keyboards/keebio/sinc/rev3/keyboard.json b/keyboards/keebio/sinc/rev3/keyboard.json index 9ee599dd20b2..d62d258b2293 100644 --- a/keyboards/keebio/sinc/rev3/keyboard.json +++ b/keyboards/keebio/sinc/rev3/keyboard.json @@ -11,6 +11,10 @@ "console": true, "rgb_matrix": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "encoder": { diff --git a/keyboards/keebio/sinc/rev4/config.h b/keyboards/keebio/sinc/rev4/config.h index 5042d0c92429..e71271f7fbf5 100644 --- a/keyboards/keebio/sinc/rev4/config.h +++ b/keyboards/keebio/sinc/rev4/config.h @@ -10,9 +10,6 @@ #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define I2C_DRIVER I2CD1 #define I2C1_SDA_PIN GP22 #define I2C1_SCL_PIN GP23 diff --git a/keyboards/keebio/sinc/rev4/keyboard.json b/keyboards/keebio/sinc/rev4/keyboard.json index 63b8994e8b68..948e4e0cce6e 100644 --- a/keyboards/keebio/sinc/rev4/keyboard.json +++ b/keyboards/keebio/sinc/rev4/keyboard.json @@ -11,6 +11,10 @@ "console": true, "rgb_matrix": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "encoder": { diff --git a/keyboards/kiserdesigns/madeline/config.h b/keyboards/kiserdesigns/madeline/config.h index 027e62e3c63a..ebe4a4ac4a9e 100644 --- a/keyboards/kiserdesigns/madeline/config.h +++ b/keyboards/kiserdesigns/madeline/config.h @@ -15,8 +15,4 @@ */ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define RP2040_FLASH_GENERIC_03H diff --git a/keyboards/kiserdesigns/madeline/keyboard.json b/keyboards/kiserdesigns/madeline/keyboard.json index bdc3ddc9c91e..b85f4b78d841 100644 --- a/keyboards/kiserdesigns/madeline/keyboard.json +++ b/keyboards/kiserdesigns/madeline/keyboard.json @@ -28,6 +28,12 @@ "resync": true } }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 1000 + }, + "url": "https://qmk.fm/keyboards", "usb": { "device_version": "0.0.1", "pid": "0x6D64", diff --git a/keyboards/kradoindustries/kousa/config.h b/keyboards/kradoindustries/kousa/config.h deleted file mode 100644 index 49c8b4798637..000000000000 --- a/keyboards/kradoindustries/kousa/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright 2023 Matt F - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/kradoindustries/kousa/keyboard.json b/keyboards/kradoindustries/kousa/keyboard.json index 2730bf5d5047..161ecac79215 100644 --- a/keyboards/kradoindustries/kousa/keyboard.json +++ b/keyboards/kradoindustries/kousa/keyboard.json @@ -43,8 +43,10 @@ "twinkle": true } }, - - + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "diode_direction": "COL2ROW", "matrix_pins": { "cols": ["GP27", "GP26", "GP25", "GP24", "GP23", "GP22", "GP20", "GP21", "GP14", "GP15", "GP16", "GP17", "GP18", "GP13", "GP0", "GP1", "GP3"], From f3769d6befe6085675a0119bcaba0f440fe5a76b Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 21:59:53 -0600 Subject: [PATCH 16/28] Migrate keyboards L --- keyboards/lily58/lite_rev3/config.h | 2 -- keyboards/lily58/lite_rev3/keyboard.json | 6 +++++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/keyboards/lily58/lite_rev3/config.h b/keyboards/lily58/lite_rev3/config.h index 9d2d289f5bb2..2263cb203337 100644 --- a/keyboards/lily58/lite_rev3/config.h +++ b/keyboards/lily58/lite_rev3/config.h @@ -2,8 +2,6 @@ // SPDX-License-Identifier: GPL-2.0-or-later #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP0 diff --git a/keyboards/lily58/lite_rev3/keyboard.json b/keyboards/lily58/lite_rev3/keyboard.json index 839cf4fe78cf..9a4e3627eaae 100644 --- a/keyboards/lily58/lite_rev3/keyboard.json +++ b/keyboards/lily58/lite_rev3/keyboard.json @@ -10,11 +10,15 @@ "pid": "0x5801", "device_version": "1.0.0" }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "serial": { "driver": "vendor" - } + } }, "matrix_pins": { "cols": ["GP3", "GP4", "GP5", "GP6", "GP7", "GP8"], From f9990d7662923ec1b33d2d9c0af473ceb70f11ff Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:02:46 -0600 Subject: [PATCH 17/28] Migrate keyboards M --- keyboards/meetlab/kafkasplit/config.h | 10 ++-------- keyboards/meetlab/kafkasplit/keyboard.json | 5 +++++ keyboards/montsinger/palmetto/config.h | 3 --- keyboards/montsinger/palmetto/keyboard.json | 7 ++++++- keyboards/mzmkb/slimdash/rev1/config.h | 5 ----- keyboards/mzmkb/slimdash/rev1/keyboard.json | 4 ++++ 6 files changed, 17 insertions(+), 17 deletions(-) diff --git a/keyboards/meetlab/kafkasplit/config.h b/keyboards/meetlab/kafkasplit/config.h index 714b709fe17d..3f6a6d88bec6 100644 --- a/keyboards/meetlab/kafkasplit/config.h +++ b/keyboards/meetlab/kafkasplit/config.h @@ -16,18 +16,12 @@ #pragma once -/* Double tap reset button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - - #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 -#define I2C1_SCL_PIN GP27 -#define I2C1_SDA_PIN GP26 +#define I2C1_SCL_PIN GP27 +#define I2C1_SDA_PIN GP26 #define I2C_DRIVER I2CD1 #define I2C1_CLOCK_SPEED 400000 #define OLED_BRIGHTNESS 128 diff --git a/keyboards/meetlab/kafkasplit/keyboard.json b/keyboards/meetlab/kafkasplit/keyboard.json index a73147490505..eff11235c538 100644 --- a/keyboards/meetlab/kafkasplit/keyboard.json +++ b/keyboards/meetlab/kafkasplit/keyboard.json @@ -121,6 +121,11 @@ "sleep": true, "split_count": [22, 22] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP25", + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "matrix_pins": { diff --git a/keyboards/montsinger/palmetto/config.h b/keyboards/montsinger/palmetto/config.h index 423a60477f4c..bc4e259648b2 100755 --- a/keyboards/montsinger/palmetto/config.h +++ b/keyboards/montsinger/palmetto/config.h @@ -3,7 +3,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U #define RP2040_FLASH_GENERIC_03H diff --git a/keyboards/montsinger/palmetto/keyboard.json b/keyboards/montsinger/palmetto/keyboard.json index b44944d39f36..233e2ee3be1d 100755 --- a/keyboards/montsinger/palmetto/keyboard.json +++ b/keyboards/montsinger/palmetto/keyboard.json @@ -15,6 +15,11 @@ "rows": ["GP5", "GP4", "GP3", "GP2", "GP15"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 1000 + }, "url": "https://carolinamech.com", "usb": { "device_version": "2.0.1", @@ -29,7 +34,7 @@ "60_iso", "60_iso_split_bs_rshift", "60_iso_tsangan", - "60_iso_tsangan_split_bs_rshift" + "60_iso_tsangan_split_bs_rshift", "60_hhkb" ], "layout_aliases": { diff --git a/keyboards/mzmkb/slimdash/rev1/config.h b/keyboards/mzmkb/slimdash/rev1/config.h index 4c77e71b781a..572f28e4c96d 100644 --- a/keyboards/mzmkb/slimdash/rev1/config.h +++ b/keyboards/mzmkb/slimdash/rev1/config.h @@ -16,13 +16,8 @@ #pragma once -// Make it easier to enter the bootloader -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - // UART1, communication between the two halves #define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode #define SERIAL_USART_TX_PIN GP17 // USART TX pin #define SERIAL_USART_RX_PIN GP18 // USART RX pin #define SERIAL_PIO_USE_PIO1 // Use PIO1 as PIO0 is used for WS2812 driver - diff --git a/keyboards/mzmkb/slimdash/rev1/keyboard.json b/keyboards/mzmkb/slimdash/rev1/keyboard.json index c9549c903b61..22d8abf60532 100644 --- a/keyboards/mzmkb/slimdash/rev1/keyboard.json +++ b/keyboards/mzmkb/slimdash/rev1/keyboard.json @@ -135,6 +135,10 @@ "sleep": true, "split_count": [35, 35] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "matrix_pins": { "right": { From 45992dbe529c39706ed1100a4f46fc223e931b44 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:03:34 -0600 Subject: [PATCH 18/28] Migrate keyboards N --- keyboards/nacly/bigsmoothknob/config.h | 19 ------------------- keyboards/nacly/bigsmoothknob/keyboard.json | 4 ++++ 2 files changed, 4 insertions(+), 19 deletions(-) delete mode 100644 keyboards/nacly/bigsmoothknob/config.h diff --git a/keyboards/nacly/bigsmoothknob/config.h b/keyboards/nacly/bigsmoothknob/config.h deleted file mode 100644 index a6e9a6c480fd..000000000000 --- a/keyboards/nacly/bigsmoothknob/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2023 nacly (https://github.com/Na-Cly) - * - * 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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/nacly/bigsmoothknob/keyboard.json b/keyboards/nacly/bigsmoothknob/keyboard.json index 85f1431b29d4..b89ccb0d9e5a 100644 --- a/keyboards/nacly/bigsmoothknob/keyboard.json +++ b/keyboards/nacly/bigsmoothknob/keyboard.json @@ -21,6 +21,10 @@ "diode_direction": "COL2ROW", "processor": "RP2040", "bootloader": "rp2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "features": { "bootmagic": true, "extrakey": true, From 3953808247241586186126bceb473e41e143aea7 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:05:31 -0600 Subject: [PATCH 19/28] Migrate keyboards P --- keyboards/piantoruv44/config.h | 4 ---- keyboards/piantoruv44/keyboard.json | 4 ++++ keyboards/pica40/rev2/config.h | 6 +----- keyboards/pica40/rev2/keyboard.json | 5 +++++ keyboards/pimoroni/keybow2040/config.h | 4 +--- keyboards/pimoroni/keybow2040/keyboard.json | 3 +++ 6 files changed, 14 insertions(+), 12 deletions(-) diff --git a/keyboards/piantoruv44/config.h b/keyboards/piantoruv44/config.h index e6ba4c0be932..92c8d5782aca 100644 --- a/keyboards/piantoruv44/config.h +++ b/keyboards/piantoruv44/config.h @@ -3,10 +3,6 @@ #pragma once - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 diff --git a/keyboards/piantoruv44/keyboard.json b/keyboards/piantoruv44/keyboard.json index 771644cb5d17..e5e0ed03bdfd 100644 --- a/keyboards/piantoruv44/keyboard.json +++ b/keyboards/piantoruv44/keyboard.json @@ -21,6 +21,10 @@ ] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "matrix_pins": { diff --git a/keyboards/pica40/rev2/config.h b/keyboards/pica40/rev2/config.h index 464bb62b2072..9afb3f868864 100644 --- a/keyboards/pica40/rev2/config.h +++ b/keyboards/pica40/rev2/config.h @@ -3,14 +3,10 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #ifdef RGBLIGHT_ENABLE # define PICA40_RGBLIGHT_TIMEOUT 5 // turn RGB off after N minutes #endif #ifdef ENCODER_ENABLE -# define SPLIT_TRANSACTION_IDS_KB ENCODER_SYNC +# define SPLIT_TRANSACTION_IDS_KB ENCODER_SYNC #endif diff --git a/keyboards/pica40/rev2/keyboard.json b/keyboards/pica40/rev2/keyboard.json index 3c753af26ab6..0653bb944f4b 100644 --- a/keyboards/pica40/rev2/keyboard.json +++ b/keyboards/pica40/rev2/keyboard.json @@ -32,6 +32,11 @@ "pin": "GP12", "driver": "vendor" }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17", + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "encoder": { diff --git a/keyboards/pimoroni/keybow2040/config.h b/keyboards/pimoroni/keybow2040/config.h index b21760e8f5ca..1c32c7d242b4 100644 --- a/keyboards/pimoroni/keybow2040/config.h +++ b/keyboards/pimoroni/keybow2040/config.h @@ -3,8 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET - #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define I2C_DRIVER I2CD0 @@ -13,5 +11,5 @@ #define I2C1_CLOCK_SPEED 100000 #ifdef RGB_MATRIX_ENABLE - #define RGB_MATRIX_SLEEP +# define RGB_MATRIX_SLEEP #endif diff --git a/keyboards/pimoroni/keybow2040/keyboard.json b/keyboards/pimoroni/keybow2040/keyboard.json index 0057382e93eb..807bc82c833c 100644 --- a/keyboards/pimoroni/keybow2040/keyboard.json +++ b/keyboards/pimoroni/keybow2040/keyboard.json @@ -84,6 +84,9 @@ {"matrix": [3, 3], "x": 224, "y": 224, "flags": 4} ] }, + "rp2040_bootloader": { + "double_tap_reset": true + }, "matrix_pins": { "direct": [ ["GP18", "GP14", "GP10", "GP6"], From 93a321cd08bfaa5d44d430cd24adbfa32e0976c8 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:06:13 -0600 Subject: [PATCH 20/28] Migrate keyboards Q --- keyboards/quokka/config.h | 3 --- keyboards/quokka/keyboard.json | 4 ++++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/keyboards/quokka/config.h b/keyboards/quokka/config.h index ae94f33a6fe8..1afef0bf8013 100644 --- a/keyboards/quokka/config.h +++ b/keyboards/quokka/config.h @@ -14,9 +14,6 @@ along with this program. If not, see . #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 150U - #define WS2812_PIO_USE_PIO1 #define I2C_DRIVER I2CD1 diff --git a/keyboards/quokka/keyboard.json b/keyboards/quokka/keyboard.json index b04f569c8c0c..da7b45945adc 100644 --- a/keyboards/quokka/keyboard.json +++ b/keyboards/quokka/keyboard.json @@ -64,6 +64,10 @@ ], "split_count": [18, 18] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 150 + }, "split": { "enabled": true, "serial": { From 642e43520e0a755c223895f08b0979990688f1d8 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:06:52 -0600 Subject: [PATCH 21/28] Migrate keyboards R --- keyboards/rico/phoenix_project_no1/config.h | 20 ------------------- .../rico/phoenix_project_no1/keyboard.json | 4 ++++ 2 files changed, 4 insertions(+), 20 deletions(-) delete mode 100644 keyboards/rico/phoenix_project_no1/config.h diff --git a/keyboards/rico/phoenix_project_no1/config.h b/keyboards/rico/phoenix_project_no1/config.h deleted file mode 100644 index 43fb63ce470f..000000000000 --- a/keyboards/rico/phoenix_project_no1/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2023 Eric Becourt (Rico at https://github.com/mymakercorner) - * - * 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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/rico/phoenix_project_no1/keyboard.json b/keyboards/rico/phoenix_project_no1/keyboard.json index ab2b207212e2..126866848b00 100644 --- a/keyboards/rico/phoenix_project_no1/keyboard.json +++ b/keyboards/rico/phoenix_project_no1/keyboard.json @@ -32,6 +32,10 @@ }, "led_count": 16 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://github.com/mymakercorner/Phoenix_Project_No1", "usb": { "device_version": "1.0.0", From 101ede84ade827d6199524afcb14ae941535317b Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:13:25 -0600 Subject: [PATCH 22/28] Migrate keyboards S --- keyboards/silakka54/config.h | 3 --- keyboards/silakka54/keyboard.json | 4 ++++ keyboards/snes_macropad/config.h | 4 ---- keyboards/snes_macropad/keyboard.json | 5 ++++ keyboards/spleeb/config.h | 3 --- keyboards/spleeb/keyboard.json | 4 ++++ keyboards/splitkb/elora/rev1/config.h | 10 +++----- keyboards/splitkb/elora/rev1/keyboard.json | 4 ++++ keyboards/splitkb/halcyon/corne/rev2/config.h | 4 ---- .../splitkb/halcyon/corne/rev2/keyboard.json | 4 ++++ keyboards/splitkb/halcyon/elora/rev2/config.h | 4 ---- .../splitkb/halcyon/elora/rev2/keyboard.json | 4 ++++ .../splitkb/halcyon/ferris/rev1/config.h | 4 ---- .../splitkb/halcyon/ferris/rev1/keyboard.json | 4 ++++ keyboards/splitkb/halcyon/kyria/rev4/config.h | 4 ---- .../splitkb/halcyon/kyria/rev4/keyboard.json | 4 ++++ .../splitkb/halcyon/lily58/rev2/config.h | 4 ---- .../splitkb/halcyon/lily58/rev2/keyboard.json | 4 ++++ .../stenokeyboards/the_uni/rp_2040/config.h | 23 ------------------- .../the_uni/rp_2040/keyboard.json | 4 ++++ keyboards/stront/config.h | 3 --- keyboards/stront/keyboard.json | 4 ++++ 22 files changed, 48 insertions(+), 63 deletions(-) delete mode 100644 keyboards/stenokeyboards/the_uni/rp_2040/config.h diff --git a/keyboards/silakka54/config.h b/keyboards/silakka54/config.h index b3d1742042c5..e8aacc8e5ea9 100644 --- a/keyboards/silakka54/config.h +++ b/keyboards/silakka54/config.h @@ -19,6 +19,3 @@ #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_LED GP17 diff --git a/keyboards/silakka54/keyboard.json b/keyboards/silakka54/keyboard.json index e621a10b37a9..8186eec0c828 100644 --- a/keyboards/silakka54/keyboard.json +++ b/keyboards/silakka54/keyboard.json @@ -24,6 +24,10 @@ "rows": ["GP2", "GP3", "GP4", "GP5","GP6"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP17" + }, "url": "https://github.com/Squalius-cephalus/silakka54", "usb": { "device_version": "1.0.0", diff --git a/keyboards/snes_macropad/config.h b/keyboards/snes_macropad/config.h index a8f0c7fc4570..a99580ce9b0f 100644 --- a/keyboards/snes_macropad/config.h +++ b/keyboards/snes_macropad/config.h @@ -6,10 +6,6 @@ #define MATRIX_COLS 4 #define MATRIX_ROWS 6 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define I2C_DRIVER I2CD1 #define I2C1_SDA_PIN GP14 #define I2C1_SCL_PIN GP15 diff --git a/keyboards/snes_macropad/keyboard.json b/keyboards/snes_macropad/keyboard.json index a7f00f3fd871..00b83d39287e 100644 --- a/keyboards/snes_macropad/keyboard.json +++ b/keyboards/snes_macropad/keyboard.json @@ -18,6 +18,11 @@ "driver": "vendor" }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP25", + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/spleeb/config.h b/keyboards/spleeb/config.h index e71f0dc0079f..1cd073ea4506 100644 --- a/keyboards/spleeb/config.h +++ b/keyboards/spleeb/config.h @@ -26,6 +26,3 @@ # define OLED_DISPLAY_128X64 # define OLED_FONT_H "./lib/glcdfont.c" #endif // OLED_ENABLE - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/spleeb/keyboard.json b/keyboards/spleeb/keyboard.json index 3b55785ee978..5714abc30079 100644 --- a/keyboards/spleeb/keyboard.json +++ b/keyboards/spleeb/keyboard.json @@ -18,6 +18,10 @@ "rows": ["GP5", "GP6", "GP7", "GP8", "GP9"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "secure": { "idle_timeout": 60000, "unlock_sequence": [ diff --git a/keyboards/splitkb/elora/rev1/config.h b/keyboards/splitkb/elora/rev1/config.h index a18edb284256..ae9f83f83441 100644 --- a/keyboards/splitkb/elora/rev1/config.h +++ b/keyboards/splitkb/elora/rev1/config.h @@ -3,10 +3,6 @@ #pragma once -// Make it easier to enter the bootloader -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - // I2C0, onboard SSD1306 socket and I2C to Myriad module #define I2C_DRIVER I2CD0 #define I2C1_SDA_PIN GP0 @@ -50,9 +46,9 @@ // OLED display #define OLED_DISPLAY_128X64 // If someone has only one OLED display -// and that display was on the slave side. -// It wouldn't work at all. This fixes that -// including some code in rev1.c but makes +// and that display was on the slave side. +// It wouldn't work at all. This fixes that +// including some code in rev1.c but makes // it so the timeout's are not synced // between halves. #define OLED_TIMEOUT 0 diff --git a/keyboards/splitkb/elora/rev1/keyboard.json b/keyboards/splitkb/elora/rev1/keyboard.json index a7921c4e1f0a..13d828e5b476 100644 --- a/keyboards/splitkb/elora/rev1/keyboard.json +++ b/keyboards/splitkb/elora/rev1/keyboard.json @@ -81,6 +81,10 @@ "led_count": 12, "split": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/splitkb/halcyon/corne/rev2/config.h b/keyboards/splitkb/halcyon/corne/rev2/config.h index b5cd6f95f29b..e033735c361a 100755 --- a/keyboards/splitkb/halcyon/corne/rev2/config.h +++ b/keyboards/splitkb/halcyon/corne/rev2/config.h @@ -3,10 +3,6 @@ #pragma once -// Make it easier to enter the bootloader -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - // UART1, communication between the two halves #define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. #define SERIAL_USART_TX_PIN GP28 // USART TX pin diff --git a/keyboards/splitkb/halcyon/corne/rev2/keyboard.json b/keyboards/splitkb/halcyon/corne/rev2/keyboard.json index 33e8e7a907b6..ea80829b30d0 100755 --- a/keyboards/splitkb/halcyon/corne/rev2/keyboard.json +++ b/keyboards/splitkb/halcyon/corne/rev2/keyboard.json @@ -126,6 +126,10 @@ "sleep": true, "split_count": [27, 27] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/splitkb/halcyon/elora/rev2/config.h b/keyboards/splitkb/halcyon/elora/rev2/config.h index b5cd6f95f29b..e033735c361a 100644 --- a/keyboards/splitkb/halcyon/elora/rev2/config.h +++ b/keyboards/splitkb/halcyon/elora/rev2/config.h @@ -3,10 +3,6 @@ #pragma once -// Make it easier to enter the bootloader -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - // UART1, communication between the two halves #define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. #define SERIAL_USART_TX_PIN GP28 // USART TX pin diff --git a/keyboards/splitkb/halcyon/elora/rev2/keyboard.json b/keyboards/splitkb/halcyon/elora/rev2/keyboard.json index c2dc711f0739..e9f9af3f64d5 100644 --- a/keyboards/splitkb/halcyon/elora/rev2/keyboard.json +++ b/keyboards/splitkb/halcyon/elora/rev2/keyboard.json @@ -147,6 +147,10 @@ "sleep": true, "split_count": [37, 37] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/splitkb/halcyon/ferris/rev1/config.h b/keyboards/splitkb/halcyon/ferris/rev1/config.h index b5cd6f95f29b..e033735c361a 100755 --- a/keyboards/splitkb/halcyon/ferris/rev1/config.h +++ b/keyboards/splitkb/halcyon/ferris/rev1/config.h @@ -3,10 +3,6 @@ #pragma once -// Make it easier to enter the bootloader -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - // UART1, communication between the two halves #define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. #define SERIAL_USART_TX_PIN GP28 // USART TX pin diff --git a/keyboards/splitkb/halcyon/ferris/rev1/keyboard.json b/keyboards/splitkb/halcyon/ferris/rev1/keyboard.json index 4cd0b23f4c7f..f80ba19739a8 100755 --- a/keyboards/splitkb/halcyon/ferris/rev1/keyboard.json +++ b/keyboards/splitkb/halcyon/ferris/rev1/keyboard.json @@ -112,6 +112,10 @@ "sleep": true, "split_count": [23, 23] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/splitkb/halcyon/kyria/rev4/config.h b/keyboards/splitkb/halcyon/kyria/rev4/config.h index d223ff2f28a9..fde9cd847d22 100755 --- a/keyboards/splitkb/halcyon/kyria/rev4/config.h +++ b/keyboards/splitkb/halcyon/kyria/rev4/config.h @@ -3,10 +3,6 @@ #pragma once -// Make it easier to enter the bootloader -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - // UART1, communication between the two halves #define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. #define SERIAL_USART_TX_PIN GP28 // USART TX pin diff --git a/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json b/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json index 7f699f25840d..e72ccdd72e00 100755 --- a/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json +++ b/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json @@ -134,6 +134,10 @@ "sleep": true, "split_count": [31, 31] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/splitkb/halcyon/lily58/rev2/config.h b/keyboards/splitkb/halcyon/lily58/rev2/config.h index b5cd6f95f29b..e033735c361a 100755 --- a/keyboards/splitkb/halcyon/lily58/rev2/config.h +++ b/keyboards/splitkb/halcyon/lily58/rev2/config.h @@ -3,10 +3,6 @@ #pragma once -// Make it easier to enter the bootloader -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - // UART1, communication between the two halves #define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. #define SERIAL_USART_TX_PIN GP28 // USART TX pin diff --git a/keyboards/splitkb/halcyon/lily58/rev2/keyboard.json b/keyboards/splitkb/halcyon/lily58/rev2/keyboard.json index 76bb538388bb..c8677fc19f0c 100755 --- a/keyboards/splitkb/halcyon/lily58/rev2/keyboard.json +++ b/keyboards/splitkb/halcyon/lily58/rev2/keyboard.json @@ -140,6 +140,10 @@ "sleep": true, "split_count": [34, 34] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 1000 + }, "split": { "enabled": true, "handedness": { diff --git a/keyboards/stenokeyboards/the_uni/rp_2040/config.h b/keyboards/stenokeyboards/the_uni/rp_2040/config.h deleted file mode 100644 index bf60719a674b..000000000000 --- a/keyboards/stenokeyboards/the_uni/rp_2040/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2019 - * - * 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 DEBUG_MATRIX_SCAN_RATE - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -//#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json b/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json index 6ec92ce422dd..52a69a05b8e6 100644 --- a/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json +++ b/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json @@ -21,6 +21,10 @@ "diode_direction": "COL2ROW", "processor": "RP2040", "bootloader": "rp2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/stront/config.h b/keyboards/stront/config.h index c1dfd3162a19..ecf1fd873743 100644 --- a/keyboards/stront/config.h +++ b/keyboards/stront/config.h @@ -8,9 +8,6 @@ #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 500U - /* any side can be master by default, enable split sync to support it */ #define EE_HANDS #define SPLIT_POINTING_ENABLE diff --git a/keyboards/stront/keyboard.json b/keyboards/stront/keyboard.json index 6e83ffa50da9..93fcdcfb88d2 100644 --- a/keyboards/stront/keyboard.json +++ b/keyboards/stront/keyboard.json @@ -60,6 +60,10 @@ "cols": ["GP2", "GP3", "GP4", "GP5", "GP6"], "rows": ["GP28", "GP27", "GP26", "GP15"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "transport": { From b7d2dbb25283871c21bca5a3f93a80024b0510b9 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:14:35 -0600 Subject: [PATCH 23/28] Migrate keyboards T --- keyboards/trnthsn/tyson60s/config.h | 20 ------------------- keyboards/trnthsn/tyson60s/keyboard.json | 6 +++++- keyboards/trojan_pinata/model_b/rev0/config.h | 3 --- .../trojan_pinata/model_b/rev0/keyboard.json | 4 ++++ 4 files changed, 9 insertions(+), 24 deletions(-) delete mode 100644 keyboards/trnthsn/tyson60s/config.h diff --git a/keyboards/trnthsn/tyson60s/config.h b/keyboards/trnthsn/tyson60s/config.h deleted file mode 100644 index aa1f8ae9cb50..000000000000 --- a/keyboards/trnthsn/tyson60s/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2024 TrnThSnMech - * - * 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 - -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/trnthsn/tyson60s/keyboard.json b/keyboards/trnthsn/tyson60s/keyboard.json index 310e300123f0..3d7acf695d18 100644 --- a/keyboards/trnthsn/tyson60s/keyboard.json +++ b/keyboards/trnthsn/tyson60s/keyboard.json @@ -15,7 +15,7 @@ "rgblight": true }, "matrix_pins": { - "cols": ["GP16", "GP24", "GP18", "GP19", "GP20", "GP22", "GP5", "GP6", "GP8", "GP9", "GP10", "GP11", "GP12", "GP13"], + "cols": ["GP16", "GP24", "GP18", "GP19", "GP20", "GP22", "GP5", "GP6", "GP8", "GP9", "GP10", "GP11", "GP12", "GP13"], "rows": ["GP0", "GP23", "GP2", "GP4", "GP17"] }, "processor": "RP2040", @@ -36,6 +36,10 @@ "max_brightness": 240, "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "vid": "0x5453", "pid": "0x2311", diff --git a/keyboards/trojan_pinata/model_b/rev0/config.h b/keyboards/trojan_pinata/model_b/rev0/config.h index df905919280b..628b654c4dc9 100644 --- a/keyboards/trojan_pinata/model_b/rev0/config.h +++ b/keyboards/trojan_pinata/model_b/rev0/config.h @@ -3,9 +3,6 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - // settings for the oled keyboard demo with Adafruit 0.91" OLED display on the Stemma QT port #define I2C_DRIVER I2CD0 #define I2C1_SDA_PIN GP0 diff --git a/keyboards/trojan_pinata/model_b/rev0/keyboard.json b/keyboards/trojan_pinata/model_b/rev0/keyboard.json index fc1ba7f86359..5bd6a1d3956b 100644 --- a/keyboards/trojan_pinata/model_b/rev0/keyboard.json +++ b/keyboards/trojan_pinata/model_b/rev0/keyboard.json @@ -22,6 +22,10 @@ "rows": ["GP2", "GP3", "GP4", "GP5", "GP6", "GP7"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://github.com/TrojanPinata/Model-B", "usb": { "device_version": "1.0.0", From 682d948724f09afc9351d2b0366a68d9890bbb98 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 16 Sep 2025 22:19:27 -0600 Subject: [PATCH 24/28] Migrate keyboards Z --- keyboards/ymdk/id75/rp2040/config.h | 20 ------------------ keyboards/ymdk/id75/rp2040/keyboard.json | 4 ++++ keyboards/yoichiro/lunakey_pico/config.h | 16 ++++++-------- keyboards/yoichiro/lunakey_pico/keyboard.json | 5 +++++ keyboards/zeix/acidandco/stellaron/config.h | 20 ------------------ .../zeix/acidandco/stellaron/keyboard.json | 4 ++++ keyboards/zeix/eden/config.h | 20 ------------------ keyboards/zeix/eden/keyboard.json | 4 ++++ keyboards/zeix/qwertyqop60hs/config.h | 20 ------------------ keyboards/zeix/qwertyqop60hs/keyboard.json | 8 +++++-- keyboards/zeix/singa/kohaku/config.h | 20 ------------------ keyboards/zeix/singa/kohaku/keyboard.json | 4 ++++ keyboards/zykrah/fuyu/config.h | 3 --- keyboards/zykrah/fuyu/keyboard.json | 4 ++++ keyboards/zykrah/fuyu_hs/config.h | 21 ------------------- keyboards/zykrah/fuyu_hs/keyboard.json | 4 ++++ keyboards/zykrah/slime88/config.h | 18 ---------------- keyboards/zykrah/slime88/keyboard.json | 4 ++++ 18 files changed, 45 insertions(+), 154 deletions(-) delete mode 100644 keyboards/ymdk/id75/rp2040/config.h delete mode 100644 keyboards/zeix/acidandco/stellaron/config.h delete mode 100644 keyboards/zeix/eden/config.h delete mode 100644 keyboards/zeix/qwertyqop60hs/config.h delete mode 100644 keyboards/zeix/singa/kohaku/config.h delete mode 100644 keyboards/zykrah/fuyu_hs/config.h delete mode 100644 keyboards/zykrah/slime88/config.h diff --git a/keyboards/ymdk/id75/rp2040/config.h b/keyboards/ymdk/id75/rp2040/config.h deleted file mode 100644 index b7a25de16032..000000000000 --- a/keyboards/ymdk/id75/rp2040/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2021 Mike Tsao - * - * 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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/ymdk/id75/rp2040/keyboard.json b/keyboards/ymdk/id75/rp2040/keyboard.json index f153203cd046..c2696b2e3c29 100644 --- a/keyboards/ymdk/id75/rp2040/keyboard.json +++ b/keyboards/ymdk/id75/rp2040/keyboard.json @@ -5,6 +5,10 @@ "rows": ["GP8", "GP6", "GP19", "GP20", "GP18"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "ws2812": { "driver": "vendor", "pin": "GP2" diff --git a/keyboards/yoichiro/lunakey_pico/config.h b/keyboards/yoichiro/lunakey_pico/config.h index a95edc0358b7..bf530f5655d9 100644 --- a/keyboards/yoichiro/lunakey_pico/config.h +++ b/keyboards/yoichiro/lunakey_pico/config.h @@ -3,15 +3,11 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define SERIAL_USART_FULL_DUPLEX #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 -//#define SERIAL_DEBUG +// #define SERIAL_DEBUG #define WS2812_PIO_USE_PIO1 @@ -21,12 +17,12 @@ */ /* disable debug print */ -//#define NO_DEBUG +// #define NO_DEBUG /* disable print */ -//#define NO_PRINT +// #define NO_PRINT /* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT +// #define NO_ACTION_LAYER +// #define NO_ACTION_TAPPING +// #define NO_ACTION_ONESHOT diff --git a/keyboards/yoichiro/lunakey_pico/keyboard.json b/keyboards/yoichiro/lunakey_pico/keyboard.json index e8326706dc04..41dc7056a421 100644 --- a/keyboards/yoichiro/lunakey_pico/keyboard.json +++ b/keyboards/yoichiro/lunakey_pico/keyboard.json @@ -42,6 +42,11 @@ "saturation_steps": 8, "brightness_steps": 8 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_led": "GP25", + "double_tap_reset_timeout": 500 + }, "split": { "enabled": true, "serial": { diff --git a/keyboards/zeix/acidandco/stellaron/config.h b/keyboards/zeix/acidandco/stellaron/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/zeix/acidandco/stellaron/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/zeix/acidandco/stellaron/keyboard.json b/keyboards/zeix/acidandco/stellaron/keyboard.json index 2f794744ed5e..439d5f2fcf27 100644 --- a/keyboards/zeix/acidandco/stellaron/keyboard.json +++ b/keyboards/zeix/acidandco/stellaron/keyboard.json @@ -13,6 +13,10 @@ "rows": ["GP2", "GP3", "GP4", "GP29", "GP12", "GP13"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "0.0.1", "pid": "0x2902", diff --git a/keyboards/zeix/eden/config.h b/keyboards/zeix/eden/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/zeix/eden/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/zeix/eden/keyboard.json b/keyboards/zeix/eden/keyboard.json index ba0faeac2751..675258f57af7 100644 --- a/keyboards/zeix/eden/keyboard.json +++ b/keyboards/zeix/eden/keyboard.json @@ -23,6 +23,10 @@ "rows": ["GP6", "GP5", "GP4", "GP0", "GP12"], "cols": ["GP28", "GP27", "GP26", "GP25", "GP24", "GP23", "GP22", "GP3", "GP2", "GP1", "GP8", "GP9", "GP10", "GP11", "GP7"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "community_layouts": [ "60_ansi", "60_ansi_split_bs_rshift", diff --git a/keyboards/zeix/qwertyqop60hs/config.h b/keyboards/zeix/qwertyqop60hs/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/zeix/qwertyqop60hs/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/zeix/qwertyqop60hs/keyboard.json b/keyboards/zeix/qwertyqop60hs/keyboard.json index f28fe49ca11f..9f3de0cf733f 100644 --- a/keyboards/zeix/qwertyqop60hs/keyboard.json +++ b/keyboards/zeix/qwertyqop60hs/keyboard.json @@ -16,10 +16,14 @@ "nkro": true }, "diode_direction": "COL2ROW", - "matrix_pins": { + "matrix_pins": { "rows": ["GP6","GP5","GP4","GP0","GP12"], "cols": ["GP28","GP27","GP26","GP25","GP24","GP23","GP22","GP3","GP2","GP1","GP8","GP9","GP10","GP11","GP7"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "community_layouts": [ "60_ansi", "60_ansi_split_bs_rshift", @@ -448,6 +452,6 @@ { "matrix": [4, 11], "w": 1.5, "x": 11, "y": 4 }, { "matrix": [4, 12], "x": 12.5, "y": 4 } ] - } + } } } diff --git a/keyboards/zeix/singa/kohaku/config.h b/keyboards/zeix/singa/kohaku/config.h deleted file mode 100644 index 77970ce4d344..000000000000 --- a/keyboards/zeix/singa/kohaku/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2023 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/zeix/singa/kohaku/keyboard.json b/keyboards/zeix/singa/kohaku/keyboard.json index 542bad9c6fc1..01b40709c3e0 100644 --- a/keyboards/zeix/singa/kohaku/keyboard.json +++ b/keyboards/zeix/singa/kohaku/keyboard.json @@ -35,6 +35,10 @@ "saturation_steps": 8, "sleep": true }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "usb": { "device_version": "0.0.1", "pid": "0x8888", diff --git a/keyboards/zykrah/fuyu/config.h b/keyboards/zykrah/fuyu/config.h index 456152286892..bb026bcd53da 100644 --- a/keyboards/zykrah/fuyu/config.h +++ b/keyboards/zykrah/fuyu/config.h @@ -14,8 +14,5 @@ along with this program. If not, see . #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - /* Caps locks LED index default is 0 (LED1 on PCB) */ #define CAPS_LOCK_LED_INDEX 0 diff --git a/keyboards/zykrah/fuyu/keyboard.json b/keyboards/zykrah/fuyu/keyboard.json index eafc92c1d2ae..028fbec3e0b8 100644 --- a/keyboards/zykrah/fuyu/keyboard.json +++ b/keyboards/zykrah/fuyu/keyboard.json @@ -105,6 +105,10 @@ ], "max_brightness": 200 }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "ws2812": { "pin": "GP2", "driver": "vendor" diff --git a/keyboards/zykrah/fuyu_hs/config.h b/keyboards/zykrah/fuyu_hs/config.h deleted file mode 100644 index 767cc3f69ac2..000000000000 --- a/keyboards/zykrah/fuyu_hs/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright 2024 Zykrah - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/zykrah/fuyu_hs/keyboard.json b/keyboards/zykrah/fuyu_hs/keyboard.json index de5530b8dec0..6ec11610426f 100644 --- a/keyboards/zykrah/fuyu_hs/keyboard.json +++ b/keyboards/zykrah/fuyu_hs/keyboard.json @@ -105,6 +105,10 @@ {"x": 0, "y": 16, "flags": 2} ] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://github.com/zykrah/fuyu", "ws2812": { "driver": "vendor", diff --git a/keyboards/zykrah/slime88/config.h b/keyboards/zykrah/slime88/config.h deleted file mode 100644 index e1a00bae4ac8..000000000000 --- a/keyboards/zykrah/slime88/config.h +++ /dev/null @@ -1,18 +0,0 @@ -/* -Copyright 2022 Zykrah -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/zykrah/slime88/keyboard.json b/keyboards/zykrah/slime88/keyboard.json index e3c946b77612..2f3e1889928d 100644 --- a/keyboards/zykrah/slime88/keyboard.json +++ b/keyboards/zykrah/slime88/keyboard.json @@ -23,6 +23,10 @@ "rows": ["GP2", "GP29", "GP28", "GP27", "GP11", "GP12"], "cols": ["GP26", "GP25", "GP24", "GP23", "GP22", "GP21", "GP20", "GP19", "GP18", "GP17", "GP16", "GP15", "GP14", "GP13", "GP0", "GP1", "GP3"] }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://github.com/zykrah/slime88", "layouts": { "LAYOUT": { From 555bc462581c9308bca5758b299358f05ea29b6d Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 17 Feb 2026 10:48:03 -0700 Subject: [PATCH 25/28] Migrations after rebase --- keyboards/cornifi/config.h | 3 --- keyboards/cornifi/keyboard.json | 4 ++++ keyboards/era/sirind/tomak79h/config.h | 7 ------- keyboards/era/sirind/tomak79s/config.h | 7 ------- .../mechanicalkeyboards/point65/config.h | 4 ---- .../mechanicalkeyboards/point65/info.json | 4 ++++ keyboards/zeix/singa/rubrehaku/config.h | 20 ------------------- keyboards/zeix/singa/rubrehaku/keyboard.json | 4 ++++ 8 files changed, 12 insertions(+), 41 deletions(-) delete mode 100644 keyboards/zeix/singa/rubrehaku/config.h diff --git a/keyboards/cornifi/config.h b/keyboards/cornifi/config.h index 36750714de1c..e8f859bf10d6 100644 --- a/keyboards/cornifi/config.h +++ b/keyboards/cornifi/config.h @@ -8,7 +8,4 @@ #define SERIAL_USART_RX_PIN GP13 #define USB_VBUS_PIN GP24 -/* RP2040- and hardware-specific config */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/cornifi/keyboard.json b/keyboards/cornifi/keyboard.json index 68e062ad33e1..a93bedc976a3 100644 --- a/keyboards/cornifi/keyboard.json +++ b/keyboards/cornifi/keyboard.json @@ -44,6 +44,10 @@ "pid": "0x0000", "vid": "0xFEED" }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "layout_aliases": { "LAYOUT": "LAYOUT_split_3x5_3_ex2" }, diff --git a/keyboards/era/sirind/tomak79h/config.h b/keyboards/era/sirind/tomak79h/config.h index dcced081d0a2..8907c309e94c 100644 --- a/keyboards/era/sirind/tomak79h/config.h +++ b/keyboards/era/sirind/tomak79h/config.h @@ -9,10 +9,3 @@ #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP -<<<<<<< HEAD - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U -======= ->>>>>>> 33252b93ee (Migrate keyboards E) diff --git a/keyboards/era/sirind/tomak79s/config.h b/keyboards/era/sirind/tomak79s/config.h index dcced081d0a2..8907c309e94c 100644 --- a/keyboards/era/sirind/tomak79s/config.h +++ b/keyboards/era/sirind/tomak79s/config.h @@ -9,10 +9,3 @@ #define SERIAL_USART_TX_PIN GP0 #define SERIAL_USART_RX_PIN GP1 #define SERIAL_USART_PIN_SWAP -<<<<<<< HEAD - -/* Reset */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U -======= ->>>>>>> 33252b93ee (Migrate keyboards E) diff --git a/keyboards/mechanicalkeyboards/point65/config.h b/keyboards/mechanicalkeyboards/point65/config.h index 31ba8c3f903a..a22aa2f4a47b 100644 --- a/keyboards/mechanicalkeyboards/point65/config.h +++ b/keyboards/mechanicalkeyboards/point65/config.h @@ -16,9 +16,5 @@ #pragma once -/* Double tap the side button to enter bootloader */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - /* couple of defaults */ #define RGB_INDICATOR_POS_OFFSET 48 /* Indicator LEDs additional brightness */ diff --git a/keyboards/mechanicalkeyboards/point65/info.json b/keyboards/mechanicalkeyboards/point65/info.json index c1ab9322a736..a2135078b71f 100644 --- a/keyboards/mechanicalkeyboards/point65/info.json +++ b/keyboards/mechanicalkeyboards/point65/info.json @@ -66,6 +66,10 @@ "device_version": "1.0.0", "vid": "0x4242" }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "ws2812": { "driver": "vendor" }, diff --git a/keyboards/zeix/singa/rubrehaku/config.h b/keyboards/zeix/singa/rubrehaku/config.h deleted file mode 100644 index e47dae35e667..000000000000 --- a/keyboards/zeix/singa/rubrehaku/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2024 zeix (@itsme-zeix) - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/zeix/singa/rubrehaku/keyboard.json b/keyboards/zeix/singa/rubrehaku/keyboard.json index 3dbed82aaba4..74f8f8ddc3c0 100644 --- a/keyboards/zeix/singa/rubrehaku/keyboard.json +++ b/keyboards/zeix/singa/rubrehaku/keyboard.json @@ -46,6 +46,10 @@ "pid": "0x8889", "vid": "0x4C27" }, + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "ws2812": { "driver": "vendor", "pin": "GP20" From c53de0ec63992f5770aff9e0ec63ec0d1e277823 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 2 Jun 2026 12:54:48 -0600 Subject: [PATCH 26/28] Replace incorrectly removed PICO_XOSC_STARTUP_DELAY_MULTIPLIER --- keyboards/ai03/altair/config.h | 3 +++ keyboards/ai03/altair_x/config.h | 3 +++ 2 files changed, 6 insertions(+) diff --git a/keyboards/ai03/altair/config.h b/keyboards/ai03/altair/config.h index f2eeb2bfd2c5..4f315a9819a3 100644 --- a/keyboards/ai03/altair/config.h +++ b/keyboards/ai03/altair/config.h @@ -5,3 +5,6 @@ /* VBUS-routed pin for upstream detection */ #define USB_VBUS_PIN GP0 + +/* RP2040- and hardware-specific config */ +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/ai03/altair_x/config.h b/keyboards/ai03/altair_x/config.h index f2eeb2bfd2c5..4f315a9819a3 100644 --- a/keyboards/ai03/altair_x/config.h +++ b/keyboards/ai03/altair_x/config.h @@ -5,3 +5,6 @@ /* VBUS-routed pin for upstream detection */ #define USB_VBUS_PIN GP0 + +/* RP2040- and hardware-specific config */ +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 From 30b30f7fc1b808de1d62375cdd9f8b402957abc8 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 2 Jun 2026 12:59:35 -0600 Subject: [PATCH 27/28] Remove additional RP2040_BOOTLOADER_DOUBLE_TAP_RESET config options --- .../cannonkeys/minimi40/staggered/config.h | 3 --- .../minimi40/staggered/keyboard.json | 4 ++++ keyboards/wolf/singa/kohaku_hotswap/config.h | 20 ------------------- .../wolf/singa/kohaku_hotswap/keyboard.json | 4 ++++ keyboards/wolf/singa/kohaku_solder/config.h | 20 ------------------- .../wolf/singa/kohaku_solder/keyboard.json | 4 ++++ .../wolf/singa/kohaku_solder_rgb/config.h | 20 ------------------- .../singa/kohaku_solder_rgb/keyboard.json | 4 ++++ 8 files changed, 16 insertions(+), 63 deletions(-) delete mode 100644 keyboards/wolf/singa/kohaku_hotswap/config.h delete mode 100644 keyboards/wolf/singa/kohaku_solder/config.h delete mode 100644 keyboards/wolf/singa/kohaku_solder_rgb/config.h diff --git a/keyboards/cannonkeys/minimi40/staggered/config.h b/keyboards/cannonkeys/minimi40/staggered/config.h index 4eec357f2019..d675d0845451 100644 --- a/keyboards/cannonkeys/minimi40/staggered/config.h +++ b/keyboards/cannonkeys/minimi40/staggered/config.h @@ -3,7 +3,4 @@ #pragma once -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U - #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/cannonkeys/minimi40/staggered/keyboard.json b/keyboards/cannonkeys/minimi40/staggered/keyboard.json index 14d20ed328ff..510f02a2af65 100644 --- a/keyboards/cannonkeys/minimi40/staggered/keyboard.json +++ b/keyboards/cannonkeys/minimi40/staggered/keyboard.json @@ -15,6 +15,10 @@ "rows": ["GP17", "GP27", "GP11", "GP12"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://cannonkeys.com", "usb": { "device_version": "0.0.1", diff --git a/keyboards/wolf/singa/kohaku_hotswap/config.h b/keyboards/wolf/singa/kohaku_hotswap/config.h deleted file mode 100644 index 49a055b0ceae..000000000000 --- a/keyboards/wolf/singa/kohaku_hotswap/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2024 Wolf - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/wolf/singa/kohaku_hotswap/keyboard.json b/keyboards/wolf/singa/kohaku_hotswap/keyboard.json index 96b539c06fd3..018ea6afeafc 100644 --- a/keyboards/wolf/singa/kohaku_hotswap/keyboard.json +++ b/keyboards/wolf/singa/kohaku_hotswap/keyboard.json @@ -14,6 +14,10 @@ "rows": ["GP10", "GP11", "GP17", "GP27", "GP28"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://singakbd.com", "usb": { "device_version": "1.0.0", diff --git a/keyboards/wolf/singa/kohaku_solder/config.h b/keyboards/wolf/singa/kohaku_solder/config.h deleted file mode 100644 index 49a055b0ceae..000000000000 --- a/keyboards/wolf/singa/kohaku_solder/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2024 Wolf - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/wolf/singa/kohaku_solder/keyboard.json b/keyboards/wolf/singa/kohaku_solder/keyboard.json index 5d0cdc5b9954..a75a6360fb09 100644 --- a/keyboards/wolf/singa/kohaku_solder/keyboard.json +++ b/keyboards/wolf/singa/kohaku_solder/keyboard.json @@ -14,6 +14,10 @@ "rows": ["GP28", "GP29", "GP10", "GP11", "GP18", "GP19", "GP24", "GP25", "GP26", "GP27"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "url": "https://singakbd.com", "usb": { "device_version": "1.0.0", diff --git a/keyboards/wolf/singa/kohaku_solder_rgb/config.h b/keyboards/wolf/singa/kohaku_solder_rgb/config.h deleted file mode 100644 index 49a055b0ceae..000000000000 --- a/keyboards/wolf/singa/kohaku_solder_rgb/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2024 Wolf - -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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/wolf/singa/kohaku_solder_rgb/keyboard.json b/keyboards/wolf/singa/kohaku_solder_rgb/keyboard.json index 8e7d74e52cf2..0526b85650ff 100644 --- a/keyboards/wolf/singa/kohaku_solder_rgb/keyboard.json +++ b/keyboards/wolf/singa/kohaku_solder_rgb/keyboard.json @@ -15,6 +15,10 @@ "rows": ["GP28", "GP29", "GP10", "GP11", "GP18", "GP19", "GP24", "GP25", "GP26", "GP27"] }, "processor": "RP2040", + "rp2040_bootloader": { + "double_tap_reset": true, + "double_tap_reset_timeout": 500 + }, "rgblight": { "animations": { "alternating": true, From 1b7816fcf2e9c345c49a08f179c7ed6f4baba5b0 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Tue, 2 Jun 2026 13:39:17 -0600 Subject: [PATCH 28/28] Remove mistaken function call --- lib/python/qmk/info.py | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index d4105f41d533..6ab5c0030b49 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -718,7 +718,6 @@ def _extract_config_h(info_data, config_c): # Pull data that easily can't be mapped in json _extract_matrix_info(info_data, config_c) - _extract_audio(info_data, config_c) _extract_rp2040_bootloder(info_data, config_c) _extract_secure_unlock(info_data, config_c) _extract_split_handedness(info_data, config_c)