~ruther/qmk_firmware

fd17ae34ecd5443418994910f02c34379fea36f3 — Joel Challis 1 year, 25 days ago 2a25e79
Tidy up keyboards/zvecr (#23418)

M keyboards/zvecr/split_blackpill/config.h => keyboards/zvecr/split_blackpill/config.h +2 -37
@@ 1,45 1,10 @@
/* Copyright 2020 zvecr <git@zvecr.com>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once

#define SPLIT_HAND_PIN B3
#define SELECT_SOFT_SERIAL_SPEED 0

#define WS2812_PWM_DRIVER PWMD3
#define WS2812_PWM_CHANNEL 1
#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM3
#define WS2812_PWM_DMA_CHANNEL 3

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

/*
 * Feature disable options
 *  These options are also useful to firmware size reduction.
 */

/* disable debug print */
//#define NO_DEBUG

/* disable print */
//#define NO_PRINT

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT

M keyboards/zvecr/split_blackpill/halconf.h => keyboards/zvecr/split_blackpill/halconf.h +2 -21
@@ 1,23 1,5 @@
/* Copyright 2020 QMK
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * This file was auto-generated by:
 *    `qmk chibios-confmigrate -i keyboards/zvecr/split_blackpill/halconf.h -r platforms/chibios/common/configs/halconf.h`
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once



@@ 26,4 8,3 @@
#define HAL_USE_SERIAL TRUE

#include_next <halconf.h>


R keyboards/zvecr/split_blackpill/info.json => keyboards/zvecr/split_blackpill/keyboard.json +11 -0
@@ 8,6 8,13 @@
        "pid": "0x0001",
        "device_version": "0.0.1"
    },
    "features": {
        "bootmagic": true,
        "extrakey": true,
        "mousekey": true,
        "nkro": true,
        "rgblight": true
    },
    "matrix_pins": {
        "cols": ["B11", "B10", "B1", "B0", "A7", "A6"],
        "rows": ["B15", "B14", "B13", "B12"],


@@ 15,6 22,10 @@
    },
    "diode_direction": "COL2ROW",
    "split": {
        "enabled": true,
        "handedness": {
            "pin": "B3"
        },
        "soft_serial_pin": "B6",
        "bootmagic": {
            "matrix": [4, 0]

M keyboards/zvecr/split_blackpill/keymaps/default/keymap.c => keyboards/zvecr/split_blackpill/keymaps/default/keymap.c +5 -3
@@ 1,6 1,8 @@
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

// Defines names for use in layer keycodes and the keymap
enum layer_names {
    _QWERTY,
    _LOWER,


@@ 26,7 28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_ortho_4x12(
    KC_ESC,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC,
    KC_TAB,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT ,
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT,
    KC_LCTL, KC_LGUI, KC_LALT, KC_APP,  LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT
),



@@ 78,7 80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 * `-----------------------------------------------------------------------------------'
 */
[_ADJUST] =  LAYOUT_ortho_4x12(
    _______, QK_BOOT,   _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT,   _______,
    _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______,
    _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______,
    _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______,
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______

M keyboards/zvecr/split_blackpill/mcuconf.h => keyboards/zvecr/split_blackpill/mcuconf.h +2 -21
@@ 1,23 1,5 @@
/* Copyright 2020 QMK
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * This file was auto-generated by:
 *    `qmk chibios-confmigrate -i keyboards/zvecr/split_blackpill/mcuconf.h -r platforms/chibios/STM32_F103_STM32DUINO/configs/mcuconf.h`
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once



@@ 31,4 13,3 @@

#undef STM32_SPI_USE_SPI2
#define STM32_SPI_USE_SPI2 FALSE


M keyboards/zvecr/split_blackpill/rules.mk => keyboards/zvecr/split_blackpill/rules.mk +0 -18
@@ 1,19 1,1 @@
# Build Options
#   change yes to no to disable
#
BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes       # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no         # Console for debug
COMMAND_ENABLE = no         # Commands for debug and configuration
NKRO_ENABLE = yes           # Enable N-Key Rollover
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
AUDIO_ENABLE = no           # Audio output

SPLIT_KEYBOARD = yes
SERIAL_DRIVER = usart

# Disable unsupported hardware
AUDIO_SUPPORTED = no
BACKLIGHT_SUPPORTED = no

M keyboards/zvecr/split_blackpill/split_blackpill.c => keyboards/zvecr/split_blackpill/split_blackpill.c +7 -19
@@ 1,25 1,13 @@
/* Copyright 2020 zvecr <git@zvecr.com>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#include "quantum.h"

void keyboard_pre_init_kb(void){
void keyboard_pre_init_kb(void) {
    // Workaround for reversible pcb/mcu
    palSetLineMode(C13, PAL_MODE_OUTPUT_OPENDRAIN);
    palSetLineMode(B9, PAL_MODE_OUTPUT_OPENDRAIN);
    palSetLineMode(B8, PAL_MODE_OUTPUT_OPENDRAIN);
    gpio_set_pin_output_open_drain(C13);
    gpio_set_pin_output_open_drain(B9);
    gpio_set_pin_output_open_drain(B8);

    keyboard_pre_init_user();
}

M keyboards/zvecr/zv48/config.h => keyboards/zvecr/zv48/config.h +3 -37
@@ 1,21 1,8 @@
/* Copyright 2020 zvecr <git@zvecr.com>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#define SPLIT_HAND_PIN B9
//#define SELECT_SOFT_SERIAL_SPEED 0
#define SERIAL_USART_SPEED 921600



@@ 24,24 11,3 @@
#define WS2812_PWM_PAL_MODE 2
#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM2
#define WS2812_PWM_DMA_CHANNEL 5

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

/*
 * Feature disable options
 *  These options are also useful to firmware size reduction.
 */

/* disable debug print */
//#define NO_DEBUG

/* disable print */
//#define NO_PRINT

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT

M keyboards/zvecr/zv48/f401/halconf.h => keyboards/zvecr/zv48/f401/halconf.h +2 -21
@@ 1,23 1,5 @@
/* Copyright 2020 QMK
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * This file was auto-generated by:
 *    `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/halconf.h -r platforms/chibios/common/configs/halconf.h`
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once



@@ 28,4 10,3 @@
#define SERIAL_USB_BUFFERS_SIZE 256

#include_next <halconf.h>


M keyboards/zvecr/zv48/f401/keyboard.json => keyboards/zvecr/zv48/f401/keyboard.json +1 -3
@@ 1,5 1,3 @@
{
    "processor": "STM32F401",
    "bootloader": "stm32-dfu",
    "board": "BLACKPILL_STM32_F401"
    "development_board": "blackpill_f401"
}

M keyboards/zvecr/zv48/f401/mcuconf.h => keyboards/zvecr/zv48/f401/mcuconf.h +2 -21
@@ 1,23 1,5 @@
/* Copyright 2020 QMK
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * This file was auto-generated by:
 *    `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/mcuconf.h -r platforms/chibios/BLACKPILL_STM32_F401/configs/mcuconf.h`
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once



@@ 28,4 10,3 @@

#undef STM32_SERIAL_USE_USART1
#define STM32_SERIAL_USE_USART1 TRUE


A keyboards/zvecr/zv48/f401/rules.mk => keyboards/zvecr/zv48/f401/rules.mk +1 -0
@@ 0,0 1,1 @@
SERIAL_DRIVER = usart

M keyboards/zvecr/zv48/f411/halconf.h => keyboards/zvecr/zv48/f411/halconf.h +2 -21
@@ 1,23 1,5 @@
/* Copyright 2020 QMK
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * This file was auto-generated by:
 *    `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f411/halconf.h -r platforms/chibios/common/configs/halconf.h`
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once



@@ 28,4 10,3 @@
#define SERIAL_USB_BUFFERS_SIZE 256

#include_next <halconf.h>


M keyboards/zvecr/zv48/f411/keyboard.json => keyboards/zvecr/zv48/f411/keyboard.json +1 -3
@@ 1,5 1,3 @@
{
    "processor": "STM32F411",
    "bootloader": "stm32-dfu",
    "board": "BLACKPILL_STM32_F411"
    "development_board": "blackpill_f411"
}

M keyboards/zvecr/zv48/f411/mcuconf.h => keyboards/zvecr/zv48/f411/mcuconf.h +2 -21
@@ 1,23 1,5 @@
/* Copyright 2020 QMK
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * This file was auto-generated by:
 *    `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f411/mcuconf.h -r platforms/chibios/BLACKPILL_STM32_F411/configs/mcuconf.h`
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once



@@ 28,4 10,3 @@

#undef STM32_SERIAL_USE_USART1
#define STM32_SERIAL_USE_USART1 TRUE


A keyboards/zvecr/zv48/f411/rules.mk => keyboards/zvecr/zv48/f411/rules.mk +1 -0
@@ 0,0 1,1 @@
SERIAL_DRIVER = usart

M keyboards/zvecr/zv48/info.json => keyboards/zvecr/zv48/info.json +12 -0
@@ 8,6 8,14 @@
        "pid": "0x0048",
        "device_version": "0.0.1"
    },
    "features": {
        "bootmagic": true,
        "encoder": true,
        "extrakey": true,
        "mousekey": true,
        "nkro": true,
        "rgblight": true
    },
    "matrix_pins": {
        "cols": ["B15", "B10", "B0", "A5", "A4", "A3"],
        "rows": ["A10", "A15", "B3", "B4"],


@@ 41,6 49,10 @@
        }
    },
    "split": {
        "enabled": true,
        "handedness": {
            "pin": "B9"
        },
        "soft_serial_pin": "B6",
        "bootmagic": {
            "matrix": [4, 0]

M keyboards/zvecr/zv48/keymaps/default/keymap.c => keyboards/zvecr/zv48/keymaps/default/keymap.c +5 -3
@@ 1,6 1,8 @@
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

// Defines names for use in layer keycodes and the keymap
enum layer_names {
    _QWERTY,
    _LOWER,


@@ 26,7 28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_ortho_4x12(
    KC_ESC,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC,
    KC_TAB,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT ,
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT,
    KC_LCTL, KC_LGUI, KC_LALT, KC_APP,  LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT
),



@@ 78,7 80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 * `-----------------------------------------------------------------------------------'
 */
[_ADJUST] =  LAYOUT_ortho_4x12(
    _______, QK_BOOT,   _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT,   _______,
    _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______,
    _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______,
    _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______,
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______

D keyboards/zvecr/zv48/rules.mk => keyboards/zvecr/zv48/rules.mk +0 -19
@@ 1,19 0,0 @@
# Build Options
#   change yes to no to disable
#
BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
KEYBOARD_SHARED_EP = yes    # Free up some extra endpoints - needed if console+mouse+extra
MOUSEKEY_ENABLE = yes       # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no         # Console for debug
COMMAND_ENABLE = no         # Commands for debug and configuration
NKRO_ENABLE = yes           # Enable N-Key Rollover
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
ENCODER_ENABLE = yes        # Enable rotary encoder support
AUDIO_ENABLE = no           # Audio output

SPLIT_KEYBOARD = yes
SERIAL_DRIVER = usart

DEFAULT_FOLDER = zvecr/zv48/f401

M keyboards/zvecr/zv48/zv48.c => keyboards/zvecr/zv48/zv48.c +9 -21
@@ 1,27 1,15 @@
/* Copyright 2020 zvecr <git@zvecr.com>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
// Copyright 2024 zvecr <git@zvecr.com>
// SPDX-License-Identifier: GPL-2.0-or-later

#include "quantum.h"

void keyboard_pre_init_kb(void){
void keyboard_pre_init_kb(void) {
    // Workaround for reversible pcb/mcu
    palSetLineMode(C13, PAL_MODE_INPUT_PULLUP);
    palSetLineMode(C15, PAL_MODE_INPUT_PULLUP);
    palSetLineMode(B7, PAL_MODE_OUTPUT_OPENDRAIN);
    palSetLineMode(A0, PAL_MODE_OUTPUT_OPENDRAIN);
    palSetLineMode(A1, PAL_MODE_OUTPUT_OPENDRAIN);
    gpio_set_pin_input_high(C13);
    gpio_set_pin_input_high(C15);
    gpio_set_pin_output_open_drain(B7);
    gpio_set_pin_output_open_drain(A0);
    gpio_set_pin_output_open_drain(A1);

    keyboard_pre_init_user();
}

Do not follow this link