From fd17ae34ecd5443418994910f02c34379fea36f3 Mon Sep 17 00:00:00 2001
From: Joel Challis <git@zvecr.com>
Date: Fri, 5 Apr 2024 02:38:12 +0100
Subject: [PATCH] Tidy up keyboards/zvecr (#23418)

---
 keyboards/zvecr/split_blackpill/config.h      | 39 +-----------------
 keyboards/zvecr/split_blackpill/halconf.h     | 23 +----------
 .../{info.json => keyboard.json}              | 11 +++++
 .../split_blackpill/keymaps/default/keymap.c  |  8 ++--
 keyboards/zvecr/split_blackpill/mcuconf.h     | 23 +----------
 keyboards/zvecr/split_blackpill/rules.mk      | 18 ---------
 .../zvecr/split_blackpill/split_blackpill.c   | 26 ++++--------
 keyboards/zvecr/zv48/config.h                 | 40 ++-----------------
 keyboards/zvecr/zv48/f401/halconf.h           | 23 +----------
 keyboards/zvecr/zv48/f401/keyboard.json       |  4 +-
 keyboards/zvecr/zv48/f401/mcuconf.h           | 23 +----------
 keyboards/zvecr/zv48/f401/rules.mk            |  1 +
 keyboards/zvecr/zv48/f411/halconf.h           | 23 +----------
 keyboards/zvecr/zv48/f411/keyboard.json       |  4 +-
 keyboards/zvecr/zv48/f411/mcuconf.h           | 23 +----------
 keyboards/zvecr/zv48/f411/rules.mk            |  1 +
 keyboards/zvecr/zv48/info.json                | 12 ++++++
 keyboards/zvecr/zv48/keymaps/default/keymap.c |  8 ++--
 keyboards/zvecr/zv48/rules.mk                 | 19 ---------
 keyboards/zvecr/zv48/zv48.c                   | 30 +++++---------
 20 files changed, 70 insertions(+), 289 deletions(-)
 rename keyboards/zvecr/split_blackpill/{info.json => keyboard.json} (94%)
 create mode 100644 keyboards/zvecr/zv48/f401/rules.mk
 create mode 100644 keyboards/zvecr/zv48/f411/rules.mk
 delete mode 100644 keyboards/zvecr/zv48/rules.mk

diff --git a/keyboards/zvecr/split_blackpill/config.h b/keyboards/zvecr/split_blackpill/config.h
index dd26e9ca32..efc3bbe66a 100644
--- a/keyboards/zvecr/split_blackpill/config.h
+++ b/keyboards/zvecr/split_blackpill/config.h
@@ -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
diff --git a/keyboards/zvecr/split_blackpill/halconf.h b/keyboards/zvecr/split_blackpill/halconf.h
index 0ee73f028a..894921e6d2 100644
--- a/keyboards/zvecr/split_blackpill/halconf.h
+++ b/keyboards/zvecr/split_blackpill/halconf.h
@@ -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>
-
diff --git a/keyboards/zvecr/split_blackpill/info.json b/keyboards/zvecr/split_blackpill/keyboard.json
similarity index 94%
rename from keyboards/zvecr/split_blackpill/info.json
rename to keyboards/zvecr/split_blackpill/keyboard.json
index 377ec44f97..71eb99b7d4 100644
--- a/keyboards/zvecr/split_blackpill/info.json
+++ b/keyboards/zvecr/split_blackpill/keyboard.json
@@ -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]
diff --git a/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c b/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c
index 51052bd6c3..e48a795028 100644
--- a/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c
+++ b/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c
@@ -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, _______, _______, _______,
     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
diff --git a/keyboards/zvecr/split_blackpill/mcuconf.h b/keyboards/zvecr/split_blackpill/mcuconf.h
index 01cb4f40f4..72b7a95be8 100644
--- a/keyboards/zvecr/split_blackpill/mcuconf.h
+++ b/keyboards/zvecr/split_blackpill/mcuconf.h
@@ -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
-
diff --git a/keyboards/zvecr/split_blackpill/rules.mk b/keyboards/zvecr/split_blackpill/rules.mk
index 196b4019ca..c6e2988321 100644
--- a/keyboards/zvecr/split_blackpill/rules.mk
+++ b/keyboards/zvecr/split_blackpill/rules.mk
@@ -1,19 +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
diff --git a/keyboards/zvecr/split_blackpill/split_blackpill.c b/keyboards/zvecr/split_blackpill/split_blackpill.c
index 6c7db0580e..64f1cb8401 100644
--- a/keyboards/zvecr/split_blackpill/split_blackpill.c
+++ b/keyboards/zvecr/split_blackpill/split_blackpill.c
@@ -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();
 }
diff --git a/keyboards/zvecr/zv48/config.h b/keyboards/zvecr/zv48/config.h
index a67a46a185..9e8c2656a9 100644
--- a/keyboards/zvecr/zv48/config.h
+++ b/keyboards/zvecr/zv48/config.h
@@ -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
diff --git a/keyboards/zvecr/zv48/f401/halconf.h b/keyboards/zvecr/zv48/f401/halconf.h
index b42a693996..089526f1f0 100644
--- a/keyboards/zvecr/zv48/f401/halconf.h
+++ b/keyboards/zvecr/zv48/f401/halconf.h
@@ -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>
-
diff --git a/keyboards/zvecr/zv48/f401/keyboard.json b/keyboards/zvecr/zv48/f401/keyboard.json
index acd7e83f77..797e990059 100644
--- a/keyboards/zvecr/zv48/f401/keyboard.json
+++ b/keyboards/zvecr/zv48/f401/keyboard.json
@@ -1,5 +1,3 @@
 {
-    "processor": "STM32F401",
-    "bootloader": "stm32-dfu",
-    "board": "BLACKPILL_STM32_F401"
+    "development_board": "blackpill_f401"
 }
diff --git a/keyboards/zvecr/zv48/f401/mcuconf.h b/keyboards/zvecr/zv48/f401/mcuconf.h
index 3c14f5e027..6a6ab82377 100644
--- a/keyboards/zvecr/zv48/f401/mcuconf.h
+++ b/keyboards/zvecr/zv48/f401/mcuconf.h
@@ -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
-
diff --git a/keyboards/zvecr/zv48/f401/rules.mk b/keyboards/zvecr/zv48/f401/rules.mk
new file mode 100644
index 0000000000..c6e2988321
--- /dev/null
+++ b/keyboards/zvecr/zv48/f401/rules.mk
@@ -0,0 +1 @@
+SERIAL_DRIVER = usart
diff --git a/keyboards/zvecr/zv48/f411/halconf.h b/keyboards/zvecr/zv48/f411/halconf.h
index 3678cd52b5..089526f1f0 100644
--- a/keyboards/zvecr/zv48/f411/halconf.h
+++ b/keyboards/zvecr/zv48/f411/halconf.h
@@ -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>
-
diff --git a/keyboards/zvecr/zv48/f411/keyboard.json b/keyboards/zvecr/zv48/f411/keyboard.json
index 2517a82403..a41c5f4dd1 100644
--- a/keyboards/zvecr/zv48/f411/keyboard.json
+++ b/keyboards/zvecr/zv48/f411/keyboard.json
@@ -1,5 +1,3 @@
 {
-    "processor": "STM32F411",
-    "bootloader": "stm32-dfu",
-    "board": "BLACKPILL_STM32_F411"
+    "development_board": "blackpill_f411"
 }
diff --git a/keyboards/zvecr/zv48/f411/mcuconf.h b/keyboards/zvecr/zv48/f411/mcuconf.h
index 572a8616cf..6a6ab82377 100644
--- a/keyboards/zvecr/zv48/f411/mcuconf.h
+++ b/keyboards/zvecr/zv48/f411/mcuconf.h
@@ -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
-
diff --git a/keyboards/zvecr/zv48/f411/rules.mk b/keyboards/zvecr/zv48/f411/rules.mk
new file mode 100644
index 0000000000..c6e2988321
--- /dev/null
+++ b/keyboards/zvecr/zv48/f411/rules.mk
@@ -0,0 +1 @@
+SERIAL_DRIVER = usart
diff --git a/keyboards/zvecr/zv48/info.json b/keyboards/zvecr/zv48/info.json
index cd81109ed1..e596eb6e79 100644
--- a/keyboards/zvecr/zv48/info.json
+++ b/keyboards/zvecr/zv48/info.json
@@ -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]
diff --git a/keyboards/zvecr/zv48/keymaps/default/keymap.c b/keyboards/zvecr/zv48/keymaps/default/keymap.c
index 51052bd6c3..e48a795028 100644
--- a/keyboards/zvecr/zv48/keymaps/default/keymap.c
+++ b/keyboards/zvecr/zv48/keymaps/default/keymap.c
@@ -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, _______, _______, _______,
     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
diff --git a/keyboards/zvecr/zv48/rules.mk b/keyboards/zvecr/zv48/rules.mk
deleted file mode 100644
index 7b615f95fa..0000000000
--- a/keyboards/zvecr/zv48/rules.mk
+++ /dev/null
@@ -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
diff --git a/keyboards/zvecr/zv48/zv48.c b/keyboards/zvecr/zv48/zv48.c
index 2716b78080..91cf2d2520 100644
--- a/keyboards/zvecr/zv48/zv48.c
+++ b/keyboards/zvecr/zv48/zv48.c
@@ -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();
 }