aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJack Sangdahl2025-08-10 11:44:49 +0200
committerGitHub2025-08-10 11:44:49 +0200
commita3ecbc53f60e2e262a0df5e34a89ca6eeb17dd48 (patch)
tree064768b7591a793724d6466bde7b20504bed72f9
parent2695344241eabc8da3101a0c2cfecf1f0381226e (diff)
Refactor `bastardkb/charybdis/4x6` (#25494)
* Refactor bastardkb/charybdis/4x6 - Update keyboard aliases accordingly - Migrate various configuration to data-driven - Use short SPDX license headers - Remove configuration that trends towards user-specific (CRC Table) - Migrate common configuration upwards - Migrate keymap to JSON - Remove likely unneeded v1 revision per #23811 - Remove revisions splinky_2, splinky_3, and stemcell where a converter should be used - Rename v2/elitec -> elitec. Specifically named elitec, as this board requires pin compatibility with an Elite-C (bottom 5 pins) * Add aliases * Replace unecessarily removed split hand pin configuration * Revert "Replace unecessarily removed split hand pin configuration" This reverts commit 0b98d1bc140a4b18c16d2b524cc8731f016372b1. After second thought, it is not necessary to configure this by default, as any user who wishes to set handedness by pin and is using an Elite-C pin compatible development board will need to manually set the pin anyway, which likely means referencing the readme.md file, which also contains the necessary SPLIT_HAND_PIN_LOW_IS_LEFT configuration.
-rw-r--r--data/mappings/keyboard_aliases.hjson12
-rw-r--r--keyboards/bastardkb/charybdis/4x6/4x6.c100
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/config.h37
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/halconf.h21
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/keyboard.json43
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/mcuconf.h28
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/readme.md3
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk6
-rw-r--r--keyboards/bastardkb/charybdis/4x6/config.h22
-rw-r--r--keyboards/bastardkb/charybdis/4x6/elitec/config.h5
-rw-r--r--keyboards/bastardkb/charybdis/4x6/elitec/keyboard.json19
-rw-r--r--keyboards/bastardkb/charybdis/4x6/info.json90
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c75
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.json31
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/default/readme.md7
-rw-r--r--keyboards/bastardkb/charybdis/4x6/readme.md15
-rw-r--r--keyboards/bastardkb/charybdis/4x6/rules.mk1
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v1/elitec/config.h25
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json41
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v1/elitec/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/elitec/config.h24
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json35
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/elitec/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_2/config.h38
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_2/keyboard.json33
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_2/mcuconf.h23
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_2/readme.md5
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk5
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_3/config.h38
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_3/keyboard.json33
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_3/mcuconf.h23
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_3/readme.md5
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk5
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/stemcell/config.h52
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/stemcell/halconf.h24
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json38
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/stemcell/mcuconf.h32
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/stemcell/rules.mk6
38 files changed, 165 insertions, 843 deletions
diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson
index 6b1a330bfb..cd5ce6e9ab 100644
--- a/data/mappings/keyboard_aliases.hjson
+++ b/data/mappings/keyboard_aliases.hjson
@@ -92,6 +92,18 @@
"bastardkb/charybdis/3x6/v2/stemcell": {
"target": "bastardkb/charybdis/3x6/elitec"
},
+ "bastardkb/charybdis/4x6/v2/elitec": {
+ "target": "bastardkb/charybdis/4x6/elitec"
+ },
+ "bastardkb/charybdis/4x6/v2/splinky_2": {
+ "target": "bastardkb/charybdis/4x6/elitec"
+ },
+ "bastardkb/charybdis/4x6/v2/splinky_3": {
+ "target": "bastardkb/charybdis/4x6/elitec"
+ },
+ "bastardkb/charybdis/4x6/v2/stemcell": {
+ "target": "bastardkb/charybdis/4x6/elitec"
+ },
"bastardkb/dilemma/3x5_2/splinky": {
"target": "bastardkb/dilemma/3x5_2/promicro"
},
diff --git a/keyboards/bastardkb/charybdis/4x6/4x6.c b/keyboards/bastardkb/charybdis/4x6/4x6.c
deleted file mode 100644
index ff1bbea470..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/4x6.c
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
- * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Publicw 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/>.
- */
-
-#include "charybdis.h"
-
-// clang-format off
-#ifdef RGB_MATRIX_ENABLE
-/**
- * \brief LEDs index.
- *
- * ╭────────────────────────╮ ╭────────────────────────╮
- * 0 7 8 15 16 20 49 45 44 37 36 29
- * ├────────────────────────┤ ├────────────────────────┤
- * 1 6 9 14 17 21 50 46 43 38 35 30
- * ├────────────────────────┤ ├────────────────────────┤
- * 2 5 10 13 18 22 51 47 42 39 34 31
- * ├────────────────────────┤ ├────────────────────────┤
- * 3 4 11 12 19 23 52 48 41 40 33 32
- * ╰────────────────────────╯ ╰────────────────────────╯
- * 26 27 28 53 54 XX
- * 25 24 55 XX
- * ╰────────────╯ ╰────────────╯
- *
- * Note: the LED config simulates 58 LEDs instead of the actual 56 to prevent
- * confusion when testing LEDs during assembly when handedness is not set
- * correctly. Those fake LEDs are bound to the physical bottom-left corner.
- */
-led_config_t g_led_config = { {
- /* Key Matrix to LED index. */
- // Left split.
- { 0, 7, 8, 15, 16, 20 }, // Num row
- { 1, 6, 9, 14, 17, 21 }, // Top row
- { 2, 5, 10, 13, 18, 22 }, // Middle row
- { 3, 4, 11, 12, 19, 23 }, // Bottom row
- { NO_LED, 28, 24, 26, 27, 25 }, // Thumb cluster
- // Right split.
- { 29, 36, 37, 44, 45, 49 }, // Num row
- { 30, 35, 38, 43, 46, 50 }, // Top row
- { 31, 34, 39, 42, 47, 51 }, // Middle row
- { 32, 33, 40, 41, 48, 52 }, // Bottom row
- { NO_LED, 53, 55, 54, NO_LED, NO_LED }, // Thumb cluster
-}, {
- /* LED index to physical position. */
- // Left split.
- /* index=0 */ { 0, 0 }, { 0, 12 }, { 0, 24 }, { 0, 36 }, // col 1 (left most)
- /* index=4 */ { 16, 36 }, { 16, 24 }, { 16, 12 }, { 16, 0 }, // col 2
- /* index=8 */ { 32, 0 }, { 32, 12 }, { 32, 24 }, { 32, 36 },
- /* index=12 */ { 48, 36 }, { 48, 24 }, { 48, 12 }, { 48, 0 },
- /* index=16 */ { 64, 0 }, { 64, 12 }, { 64, 24 }, { 64, 36 },
- /* index=20 */ { 80, 0 }, { 80, 12 }, { 80, 24 }, { 80, 36 },
- /* index=24 */ { 112, 64 }, { 96, 64 }, { 80, 52 },
- /* index=27 */ { 96, 52 }, { 112, 52 },
- // Right split.
- /* index=29 */ { 224, 0 }, { 224, 12 }, { 224, 24 }, { 224, 36 }, // col 12 (right most)
- /* index=33 */ { 208, 36 }, { 208, 24 }, { 208, 12 }, { 208, 0 }, // col 11
- /* index=37 */ { 192, 0 }, { 192, 12 }, { 192, 24 }, { 192, 36 },
- /* index=41 */ { 176, 36 }, { 176, 24 }, { 176, 12 }, { 176, 0 },
- /* index=45 */ { 160, 0 }, { 160, 12 }, { 160, 24 }, { 160, 36 },
- /* index=49 */ { 144, 0 }, { 144, 12 }, { 144, 24 }, { 144, 36 },
- /* index=53 */ { 112, 52 }, { 128, 64 }, { 112, 64 },
- /* index=56 */ { 0, 0 }, { 0, 0 },
-}, {
- /* LED index to flag. */
- // Left split.
- /* index=0 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 1
- /* index=4 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 2
- /* index=8 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=12 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=16 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=20 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=24 */ LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, // Thumb cluster top
- /* index=27 */ LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, // Thumb cluster bottom
- // Right split.
- /* index=29 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 12
- /* index=33 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 11
- /* index=37 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=41 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=45 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=49 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT,
- /* index=53 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // Thumb cluster
- /* index=55 */ LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, // Thumb cluster fakes
-} };
-#endif
-// clang-format on
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/config.h b/keyboards/bastardkb/charybdis/4x6/blackpill/config.h
index bd1e0fe31e..9c01986583 100644
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/config.h
+++ b/keyboards/bastardkb/charybdis/4x6/blackpill/config.h
@@ -1,28 +1,9 @@
-/*
- * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
- * Copyright 2021 Stefan Kerkmann (@KarlK90)
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Publicw 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 2020 Christopher Courtney <drashna@live.com> (@drashna)
+// Copyright 2021 Stefan Kerkmann (@KarlK90)
+// Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-/* Handedness. */
-#define SPLIT_HAND_PIN A3 // High -> left, Low -> right.
-
-/* RGB settings. */
#define WS2812_PWM_DRIVER PWMD2
#define WS2812_PWM_CHANNEL 2
#define WS2812_PWM_PAL_MODE 1
@@ -30,14 +11,6 @@
#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM1
#define WS2812_PWM_DMA_CHANNEL 3
-/* Serial configuration for split keyboard. */
-#define SERIAL_USART_TX_PIN A9
-
-/* CRC. */
-#define CRC8_USE_TABLE
-#define CRC8_OPTIMIZE_SPEED
-
-/* SPI config for EEPROM and pmw3360 sensor. */
#define SPI_DRIVER SPID1
#define SPI_SCK_PIN A5
#define SPI_SCK_PAL_MODE 5
@@ -46,9 +19,7 @@
#define SPI_MISO_PIN A6
#define SPI_MISO_PAL_MODE 5
-/* EEPROM config. */
#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4
-/* PMW3360 settings. */
#define POINTING_DEVICE_CS_PIN B14
#define PMW33XX_CS_DIVISOR 64
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/halconf.h b/keyboards/bastardkb/charybdis/4x6/blackpill/halconf.h
index 300b0eeaed..6876cc3e00 100644
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/halconf.h
+++ b/keyboards/bastardkb/charybdis/4x6/blackpill/halconf.h
@@ -1,21 +1,6 @@
-/**
- * Copyright 2020 Nick Brassel (tzarc)
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * 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 2020 Nick Brassel (tzarc)
+// Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define HAL_USE_PWM TRUE
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/keyboard.json b/keyboards/bastardkb/charybdis/4x6/blackpill/keyboard.json
index b55dc29445..4bef461b6b 100644
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/keyboard.json
+++ b/keyboards/bastardkb/charybdis/4x6/blackpill/keyboard.json
@@ -1,38 +1,23 @@
{
- "keyboard_name": "Charybdis (4x6) Blackpill",
- "usb": {
- "device_version": "1.0.0",
- "shared_endpoint": {
- "keyboard": true
- }
- },
- "features": {
- "bootmagic": true,
- "mousekey": true,
- "extrakey": true,
- "rgb_matrix": true,
- "pointing_device": true
- },
+ "development_board": "blackpill_f411",
"eeprom": {
"driver": "spi"
},
- "split": {
- "enabled": true
- },
- "rgb_matrix": {
- "driver": "ws2812"
- },
- "ws2812": {
- "pin": "A1",
- "driver": "pwm"
- },
- "build": {
- "debounce_type": "asym_eager_defer_pk"
- },
"matrix_pins": {
"cols": ["B0", "B1", "B10", "B3", "B4", "B5"],
"rows": ["B15", "A2", "B8", "A8", "B9"]
},
- "diode_direction": "ROW2COL",
- "development_board": "blackpill_f411"
+ "split": {
+ "handedness": {
+ "pin": "A3"
+ },
+ "serial": {
+ "driver": "usart",
+ "pin": "A9"
+ }
+ },
+ "ws2812": {
+ "driver": "pwm",
+ "pin": "A1"
+ }
}
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/mcuconf.h b/keyboards/bastardkb/charybdis/4x6/blackpill/mcuconf.h
index 46b3b42f8b..be641fb899 100644
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/mcuconf.h
+++ b/keyboards/bastardkb/charybdis/4x6/blackpill/mcuconf.h
@@ -1,22 +1,7 @@
-/*
- * Copyright 2020 Nick Brassel (tzarc)
- * Copyright 2021 Stefan Kerkmann (@KarlK90)
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * 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 2020 Nick Brassel (tzarc)
+// Copyright 2021 Stefan Kerkmann (@KarlK90)
+// Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include_next <mcuconf.h>
@@ -30,11 +15,6 @@
#undef STM32_SPI_USE_SPI1
#define STM32_SPI_USE_SPI1 TRUE
-#undef STM32_SPI_SPI1_RX_DMA_STREAM
-#define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0)
-#undef STM32_SPI_SPI1_TX_DMA_STREAM
-#define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3)
-
#undef STM32_SERIAL_USE_USART1
#define STM32_SERIAL_USE_USART1 TRUE
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/readme.md b/keyboards/bastardkb/charybdis/4x6/blackpill/readme.md
deleted file mode 100644
index bbae15bb85..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/readme.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Charybdis (4x6) BlackPill
-
-An ergonomic keyboard with integrated trackball, with BlackPill (STM32F411) mod.
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk b/keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk
deleted file mode 100644
index 3caafdef92..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-AUDIO_SUPPORTED = no # Audio is not supported.
-
-POINTING_DEVICE_DRIVER = pmw3360
-MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
-
-SERIAL_DRIVER = usart
diff --git a/keyboards/bastardkb/charybdis/4x6/config.h b/keyboards/bastardkb/charybdis/4x6/config.h
deleted file mode 100644
index 1c952759a7..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Trackball angle adjustment. */
-#define ROTATIONAL_TRANSFORM_ANGLE -25
diff --git a/keyboards/bastardkb/charybdis/4x6/elitec/config.h b/keyboards/bastardkb/charybdis/4x6/elitec/config.h
new file mode 100644
index 0000000000..411ddaf6b9
--- /dev/null
+++ b/keyboards/bastardkb/charybdis/4x6/elitec/config.h
@@ -0,0 +1,5 @@
+// Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#define POINTING_DEVICE_CS_PIN F0
diff --git a/keyboards/bastardkb/charybdis/4x6/elitec/keyboard.json b/keyboards/bastardkb/charybdis/4x6/elitec/keyboard.json
new file mode 100644
index 0000000000..839598e85e
--- /dev/null
+++ b/keyboards/bastardkb/charybdis/4x6/elitec/keyboard.json
@@ -0,0 +1,19 @@
+{
+ "build": {
+ "lto": true
+ },
+ "development_board": "elite_c",
+ "matrix_pins": {
+ "cols": ["F6", "F5", "B6", "D7", "E6", "B4"],
+ "rows": ["F4", "F7", "C6", "D4", "B5"]
+ },
+ "pin_compatible": "elite_c",
+ "split": {
+ "serial": {
+ "pin": "D2"
+ }
+ },
+ "ws2812": {
+ "pin": "D3"
+ }
+}
diff --git a/keyboards/bastardkb/charybdis/4x6/info.json b/keyboards/bastardkb/charybdis/4x6/info.json
index 54bb564306..17d68900df 100644
--- a/keyboards/bastardkb/charybdis/4x6/info.json
+++ b/keyboards/bastardkb/charybdis/4x6/info.json
@@ -1,15 +1,80 @@
{
- "manufacturer": "Bastard Keyboards",
- "url": "https://bastardkb.com/charybdis",
- "usb": {
- "pid": "0x1833",
- "vid": "0xA8F8"
+ "keyboard_name": "Charybdis (4x6)",
+ "diode_direction": "ROW2COL",
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": false,
+ "pointing_device": true,
+ "rgb_matrix": true
},
"rgb_matrix": {
+ "driver": "ws2812",
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
+ {"matrix": [1, 0], "x": 0, "y": 12, "flags": 4},
+ {"matrix": [2, 0], "x": 0, "y": 24, "flags": 4},
+ {"matrix": [3, 0], "x": 0, "y": 36, "flags": 4},
+ {"matrix": [3, 1], "x": 16, "y": 36, "flags": 4},
+ {"matrix": [2, 1], "x": 16, "y": 24, "flags": 4},
+ {"matrix": [1, 1], "x": 16, "y": 12, "flags": 4},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
+ {"matrix": [1, 2], "x": 32, "y": 12, "flags": 4},
+ {"matrix": [2, 2], "x": 32, "y": 24, "flags": 4},
+ {"matrix": [3, 2], "x": 32, "y": 36, "flags": 4},
+ {"matrix": [3, 3], "x": 48, "y": 36, "flags": 4},
+ {"matrix": [2, 3], "x": 48, "y": 24, "flags": 4},
+ {"matrix": [1, 3], "x": 48, "y": 12, "flags": 4},
+ {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4},
+ {"matrix": [1, 4], "x": 64, "y": 12, "flags": 4},
+ {"matrix": [2, 4], "x": 64, "y": 24, "flags": 4},
+ {"matrix": [3, 4], "x": 64, "y": 36, "flags": 4},
+ {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4},
+ {"matrix": [1, 5], "x": 80, "y": 12, "flags": 4},
+ {"matrix": [2, 5], "x": 80, "y": 24, "flags": 4},
+ {"matrix": [3, 5], "x": 80, "y": 36, "flags": 4},
+ {"matrix": [4, 2], "x": 112, "y": 64, "flags": 1},
+ {"matrix": [4, 5], "x": 96, "y": 64, "flags": 1},
+ {"matrix": [4, 3], "x": 80, "y": 52, "flags": 1},
+ {"matrix": [4, 4], "x": 96, "y": 52, "flags": 1},
+ {"matrix": [4, 1], "x": 112, "y": 52, "flags": 1},
+ {"matrix": [5, 0], "x": 224, "y": 0, "flags": 4},
+ {"matrix": [6, 0], "x": 224, "y": 12, "flags": 4},
+ {"matrix": [7, 0], "x": 224, "y": 24, "flags": 4},
+ {"matrix": [8, 0], "x": 224, "y": 36, "flags": 4},
+ {"matrix": [8, 1], "x": 208, "y": 36, "flags": 4},
+ {"matrix": [7, 1], "x": 208, "y": 24, "flags": 4},
+ {"matrix": [6, 1], "x": 208, "y": 12, "flags": 4},
+ {"matrix": [5, 1], "x": 208, "y": 0, "flags": 4},
+ {"matrix": [5, 2], "x": 192, "y": 0, "flags": 4},
+ {"matrix": [6, 2], "x": 192, "y": 12, "flags": 4},
+ {"matrix": [7, 2], "x": 192, "y": 24, "flags": 4},
+ {"matrix": [8, 2], "x": 192, "y": 36, "flags": 4},
+ {"matrix": [8, 3], "x": 176, "y": 36, "flags": 4},
+ {"matrix": [7, 3], "x": 176, "y": 24, "flags": 4},
+ {"matrix": [6, 3], "x": 176, "y": 12, "flags": 4},
+ {"matrix": [5, 3], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [5, 4], "x": 160, "y": 0, "flags": 4},
+ {"matrix": [6, 4], "x": 160, "y": 12, "flags": 4},
+ {"matrix": [7, 4], "x": 160, "y": 24, "flags": 4},
+ {"matrix": [8, 4], "x": 160, "y": 36, "flags": 4},
+ {"matrix": [5, 5], "x": 144, "y": 0, "flags": 4},
+ {"matrix": [6, 5], "x": 144, "y": 12, "flags": 4},
+ {"matrix": [7, 5], "x": 144, "y": 24, "flags": 4},
+ {"matrix": [8, 5], "x": 144, "y": 36, "flags": 4},
+ {"matrix": [9, 1], "x": 112, "y": 52, "flags": 4},
+ {"matrix": [9, 3], "x": 128, "y": 64, "flags": 4},
+ {"matrix": [9, 2], "x": 112, "y": 64, "flags": 4},
+ {"x": 128, "y": 52, "flags": 1},
+ {"x": 144, "y": 52, "flags": 1}
+ ],
"split_count": [29, 29]
},
- "layout_aliases": {
- "LAYOUT_charybdis_4x6": "LAYOUT"
+ "usb": {
+ "device_version": "2.0.0",
+ "pid": "0x1833"
},
"layouts": {
"LAYOUT": {
@@ -20,66 +85,55 @@
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [0, 4], "x": 4, "y": 0},
{"matrix": [0, 5], "x": 5, "y": 0},
-
{"matrix": [5, 5], "x": 11, "y": 0},
{"matrix": [5, 4], "x": 12, "y": 0},
{"matrix": [5, 3], "x": 13, "y": 0},
{"matrix": [5, 2], "x": 14, "y": 0},
{"matrix": [5, 1], "x": 15, "y": 0},
{"matrix": [5, 0], "x": 16, "y": 0},
-
{"matrix": [1, 0], "x": 0, "y": 1},
{"matrix": [1, 1], "x": 1, "y": 1},
{"matrix": [1, 2], "x": 2, "y": 1},
{"matrix": [1, 3], "x": 3, "y": 1},
{"matrix": [1, 4], "x": 4, "y": 1},
{"matrix": [1, 5], "x": 5, "y": 1},
-
{"matrix": [6, 5], "x": 11, "y": 1},
{"matrix": [6, 4], "x": 12, "y": 1},
{"matrix": [6, 3], "x": 13, "y": 1},
{"matrix": [6, 2], "x": 14, "y": 1},
{"matrix": [6, 1], "x": 15, "y": 1},
{"matrix": [6, 0], "x": 16, "y": 1},
-
{"matrix": [2, 0], "x": 0, "y": 2},
{"matrix": [2, 1], "x": 1, "y": 2},
{"matrix": [2, 2], "x": 2, "y": 2},
{"matrix": [2, 3], "x": 3, "y": 2},
{"matrix": [2, 4], "x": 4, "y": 2},
{"matrix": [2, 5], "x": 5, "y": 2},
-
{"matrix": [7, 5], "x": 11, "y": 2},
{"matrix": [7, 4], "x": 12, "y": 2},
{"matrix": [7, 3], "x": 13, "y": 2},
{"matrix": [7, 2], "x": 14, "y": 2},
{"matrix": [7, 1], "x": 15, "y": 2},
{"matrix": [7, 0], "x": 16, "y": 2},
-
{"matrix": [3, 0], "x": 0, "y": 3},
{"matrix": [3, 1], "x": 1, "y": 3},
{"matrix": [3, 2], "x": 2, "y": 3},
{"matrix": [3, 3], "x": 3, "y": 3},
{"matrix": [3, 4], "x": 4, "y": 3},
{"matrix": [3, 5], "x": 5, "y": 3},
-
{"matrix": [8, 5], "x": 11, "y": 3},
{"matrix": [8, 4], "x": 12, "y": 3},
{"matrix": [8, 3], "x": 13, "y": 3},
{"matrix": [8, 2], "x": 14, "y": 3},
{"matrix": [8, 1], "x": 15, "y": 3},
{"matrix": [8, 0], "x": 16, "y": 3},
-
{"matrix": [4, 3], "x": 5, "y": 4},
{"matrix": [4, 4], "x": 6, "y": 4},
{"matrix": [4, 1], "x": 7, "y": 4},
-
{"matrix": [9, 1], "x": 9, "y": 4},
{"matrix": [9, 3], "x": 10, "y": 4},
-
{"matrix": [4, 5], "x": 6, "y": 5},
{"matrix": [4, 2], "x": 7, "y": 5},
-
{"matrix": [9, 5], "x": 9, "y": 5}
]
}
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c
deleted file mode 100644
index f440dac8cb..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/**
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * 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/>.
- */
-#include QMK_KEYBOARD_H
-
-enum charybdis_keymap_layers {
- LAYER_BASE = 0,
- LAYER_LOWER,
- LAYER_RAISE,
-};
-
-#define LOWER MO(LAYER_LOWER)
-#define RAISE MO(LAYER_RAISE)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [LAYER_BASE] = LAYOUT(
- // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LALT,
- // ╰──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────╯
- KC_LGUI, KC_SPC, LOWER, RAISE, KC_ENT,
- KC_LALT, KC_BSPC, KC_DEL
- // ╰───────────────────────────╯ ╰──────────────────╯
- ),
-
- [LAYER_LOWER] = LAYOUT(
- // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- RM_NEXT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LBRC, KC_P7, KC_P8, KC_P9, KC_RBRC, XXXXXXX,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- RM_TOGG, KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, XXXXXXX, KC_PPLS, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PEQL,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- RM_PREV, XXXXXXX, XXXXXXX, XXXXXXX, EE_CLR, QK_BOOT, KC_PAST, KC_P1, KC_P2, KC_P3, KC_PSLS, KC_PDOT,
- // ╰──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────╯
- XXXXXXX, XXXXXXX, _______, XXXXXXX, _______,
- XXXXXXX, XXXXXXX, KC_P0
- // ╰───────────────────────────╯ ╰──────────────────╯
- ),
-
- [LAYER_RAISE] = LAYOUT(
- // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮
- KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- KC_MNXT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- KC_MPLY, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_RSFT, KC_RCTL, KC_RALT, KC_RGUI, KC_MUTE,
- // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
- KC_MPRV, KC_HOME, KC_PGUP, KC_PGDN, KC_END, XXXXXXX, QK_BOOT, EE_CLR, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD,
- // ╰──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────╯
- _______, _______, XXXXXXX, _______, XXXXXXX,
- _______, _______, XXXXXXX
- // ╰───────────────────────────╯ ╰──────────────────╯
- ),
-};
-// clang-format on
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.json b/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.json
new file mode 100644
index 0000000000..2df4f16675
--- /dev/null
+++ b/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.json
@@ -0,0 +1,31 @@
+{
+ "keyboard": "bastardkb/charybdis/4x6/elitec",
+ "keymap": "default",
+ "layout": "LAYOUT",
+ "layers": [
+ [
+ "KC_ESC" , "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "KC_GRV" ,
+ "KC_TAB", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P", "KC_BSPC",
+ "KC_LCTL", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "KC_QUOT",
+ "KC_LSFT", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_CAPS",
+ "KC_LGUI", "MO(1)", "KC_SPC", "KC_ENT", "MO(2)",
+ "KC_LALT", "KC_SPC", "KC_BSPC"
+ ],
+ [
+ "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______",
+ "_______", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "_______",
+ "_______", "KC_EXLM", "KC_AT", "KC_HASH", "KC_DLR", "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "_______",
+ "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______",
+ "_______", "_______", "_______", "_______", "_______",
+ "_______", "_______", "_______"
+ ],
+ [
+ "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______",
+ "QK_BOOT", "_______", "_______", "_______", "_______", "_______", "RM_VALU", "RM_HUEU", "RM_SATU", "RM_NEXT", "RM_TOGG", "_______",
+ "EE_CLR", "_______", "_______", "_______", "_______", "_______", "RM_VALD", "RM_HUED", "RM_SATD", "RM_PREV", "_______", "_______",
+ "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______",
+ "_______", "_______", "_______", "_______", "_______",
+ "_______", "_______", "_______"
+ ]
+ ]
+}
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/default/readme.md b/keyboards/bastardkb/charybdis/4x6/keymaps/default/readme.md
deleted file mode 100644
index 23a85e54d5..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/default/readme.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Charybdis (4x6) default keymap
-
-> :bulb: Have a look at the [`via` keymap](../via) for a more feature-rich layout.
-
-The Charydbis (4x6) default keymap is inspired from the original [Dactyl Manuform](../../../../../handwired/dactyl_manuform) default keymap.
-
-This layout supports RGB matrix. However, due to space constraints on the MCU, only a limited number of effect can be enabled at once. Look at the `config.h` file and enable your favorite effect.
diff --git a/keyboards/bastardkb/charybdis/4x6/readme.md b/keyboards/bastardkb/charybdis/4x6/readme.md
deleted file mode 100644
index af2396cd6d..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/readme.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Charybdis (4x6)
-
-An ergonomic keyboard with integrated trackball.
-
-The Charybdis is available in 4x6 and 3x5 form factor at [bastardkb.com](https://bastardkb.com).
-
-## Keymaps
-
-### [`default`](keymaps/default)
-
-A simple QWERTY layout with 3 layers.
-
-### [`via`](keymaps/via)
-
-Same as the [default](keymaps/default) keymap, but with VIA support.
diff --git a/keyboards/bastardkb/charybdis/4x6/rules.mk b/keyboards/bastardkb/charybdis/4x6/rules.mk
new file mode 100644
index 0000000000..fab9162dc6
--- /dev/null
+++ b/keyboards/bastardkb/charybdis/4x6/rules.mk
@@ -0,0 +1 @@
+POINTING_DEVICE_DRIVER = pmw3360
diff --git a/keyboards/bastardkb/charybdis/4x6/v1/elitec/config.h b/keyboards/bastardkb/charybdis/4x6/v1/elitec/config.h
deleted file mode 100644
index dc0c6e4e03..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v1/elitec/config.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Handedness. */
-#define MASTER_RIGHT
-
-/* PMW3360 settings. */
-#define POINTING_DEVICE_CS_PIN B0
diff --git a/keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json
deleted file mode 100644
index 6b0caff82e..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "keyboard_name": "Charybdis (4x6) Elite-C",
- "usb": {
- "device_version": "1.0.0"
- },
- "features": {
- "bootmagic": true,
- "mousekey": false,
- "extrakey": true,
- "rgb_matrix": true,
- "pointing_device": true
- },
- "build": {
- "lto": true
- },
- "ws2812": {
- "pin": "D3"
- },
- "rgb_matrix": {
- "driver": "ws2812"
- },
- "matrix_pins": {
- "cols": ["D5", "C7", "F0", "D7", "E6", "B4"],
- "rows": ["F1", "B7", "C6", "D4", "B5"]
- },
- "diode_direction": "ROW2COL",
- "split": {
- "enabled": true,
- "serial": {
- "pin": "D2"
- },
- "matrix_pins": {
- "right": {
- "cols": ["F1", "C7", "B7", "D7", "E6", "B4"],
- "rows": ["D5", "F0", "C6", "D4", "B5"]
- }
- }
- },
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu"
-}
diff --git a/keyboards/bastardkb/charybdis/4x6/v1/elitec/rules.mk b/keyboards/bastardkb/charybdis/4x6/v1/elitec/rules.mk
deleted file mode 100644
index 0e4d15d5bc..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v1/elitec/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-AUDIO_SUPPORTED = no # Audio is not supported.
-
-POINTING_DEVICE_DRIVER = pmw3360
-MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/elitec/config.h b/keyboards/bastardkb/charybdis/4x6/v2/elitec/config.h
deleted file mode 100644
index 3b91322247..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/elitec/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Handedness. */
-#define MASTER_RIGHT
-
-/* PMW3360 settings. */
-#define POINTING_DEVICE_CS_PIN F0
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json
deleted file mode 100644
index 4163f9d476..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "keyboard_name": "Charybdis (4x6) Elite-C",
- "usb": {
- "device_version": "2.0.0"
- },
- "features": {
- "bootmagic": true,
- "mousekey": false,
- "extrakey": true,
- "rgb_matrix": true,
- "pointing_device": true
- },
- "build": {
- "lto": true
- },
- "ws2812": {
- "pin": "D3"
- },
- "rgb_matrix": {
- "driver": "ws2812"
- },
- "matrix_pins": {
- "cols": ["F6", "F5", "B6", "D7", "E6", "B4"],
- "rows": ["F4", "F7", "C6", "D4", "B5"]
- },
- "diode_direction": "ROW2COL",
- "split": {
- "enabled": true,
- "serial": {
- "pin": "D2"
- }
- },
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu"
-}
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/elitec/rules.mk b/keyboards/bastardkb/charybdis/4x6/v2/elitec/rules.mk
deleted file mode 100644
index 0e4d15d5bc..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/elitec/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-AUDIO_SUPPORTED = no # Audio is not supported.
-
-POINTING_DEVICE_DRIVER = pmw3360
-MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/config.h b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/config.h
deleted file mode 100644
index e6e2a4f216..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Handedness. */
-#define MASTER_RIGHT
-
-// To use the handedness pin, resistors need to be installed on the adapter PCB.
-// If so, uncomment the following code, and undefine MASTER_RIGHT above.
-// #define SPLIT_HAND_PIN GP13
-// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
-
-/* SPI & PMW3360 settings. */
-#define SPI_DRIVER SPID0
-#define SPI_SCK_PIN GP18
-#define SPI_MISO_PIN GP20
-#define SPI_MOSI_PIN GP19
-#define POINTING_DEVICE_CS_PIN GP14
-
-/* Reset. */
-#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/charybdis/4x6/v2/splinky_2/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/keyboard.json
deleted file mode 100644
index 0da7d0b442..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/keyboard.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "keyboard_name": "Charybdis (4x6) Splinky",
- "usb": {
- "device_version": "2.0.0"
- },
- "features": {
- "bootmagic": true,
- "mousekey": false,
- "extrakey": true,
- "rgb_matrix": true,
- "pointing_device": true
- },
- "rgb_matrix": {
- "driver": "ws2812"
- },
- "matrix_pins": {
- "cols": ["GP27", "GP28", "GP15", "GP6", "GP7", "GP8"],
- "rows": ["GP29", "GP26", "GP5", "GP4", "GP9"]
- },
- "diode_direction": "ROW2COL",
- "split": {
- "enabled": true,
- "serial": {
- "pin": "GP1"
- }
- },
- "ws2812": {
- "pin": "GP0",
- "driver": "vendor"
- },
- "processor": "RP2040",
- "bootloader": "rp2040"
-}
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/mcuconf.h b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/mcuconf.h
deleted file mode 100644
index 6aaf31428c..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/mcuconf.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include_next <mcuconf.h>
-
-#undef RP_SPI_USE_SPI0
-#define RP_SPI_USE_SPI0 TRUE
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/readme.md b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/readme.md
deleted file mode 100644
index 662eb5825c..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Splinky controller
-
-The splinky is a Pro-Micro/Elite-C replacement with USB-C and RP2040.
-
-See [plut0nium/0xB2](https://github.com/plut0nium/0xB2/#releases) to figure out the right version for you (v2 or v3).
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk
deleted file mode 100644
index db29cb6789..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-AUDIO_SUPPORTED = no # Audio is not supported
-
-POINTING_DEVICE_DRIVER = pmw3360
-
-SERIAL_DRIVER = vendor
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/config.h b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/config.h
deleted file mode 100644
index ee7745d41e..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Handedness. */
-#define MASTER_RIGHT
-
-// To use the handedness pin, resistors need to be installed on the adapter PCB.
-// If so, uncomment the following code, and undefine MASTER_RIGHT above.
-// #define SPLIT_HAND_PIN GP15
-// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
-
-/* SPI & PMW3360 settings. */
-#define SPI_DRIVER SPID0
-#define SPI_SCK_PIN GP22
-#define SPI_MISO_PIN GP20
-#define SPI_MOSI_PIN GP23
-#define POINTING_DEVICE_CS_PIN GP16
-
-/* Reset. */
-#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/charybdis/4x6/v2/splinky_3/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/keyboard.json
deleted file mode 100644
index 026684eb92..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/keyboard.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "keyboard_name": "Charybdis (4x6) Splinky",
- "usb": {
- "device_version": "2.0.0"
- },
- "features": {
- "bootmagic": true,
- "mousekey": false,
- "extrakey": true,
- "rgb_matrix": true,
- "pointing_device": true
- },
- "rgb_matrix": {
- "driver": "ws2812"
- },
- "matrix_pins": {
- "cols": ["GP27", "GP28", "GP21", "GP6", "GP7", "GP8"],
- "rows": ["GP29", "GP26", "GP5", "GP4", "GP9"]
- },
- "diode_direction": "ROW2COL",
- "split": {
- "enabled": true,
- "serial": {
- "pin": "GP1"
- }
- },
- "ws2812": {
- "pin": "GP0",
- "driver": "vendor"
- },
- "processor": "RP2040",
- "bootloader": "rp2040"
-}
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/mcuconf.h b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/mcuconf.h
deleted file mode 100644
index 6aaf31428c..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/mcuconf.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include_next <mcuconf.h>
-
-#undef RP_SPI_USE_SPI0
-#define RP_SPI_USE_SPI0 TRUE
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/readme.md b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/readme.md
deleted file mode 100644
index 662eb5825c..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Splinky controller
-
-The splinky is a Pro-Micro/Elite-C replacement with USB-C and RP2040.
-
-See [plut0nium/0xB2](https://github.com/plut0nium/0xB2/#releases) to figure out the right version for you (v2 or v3).
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk
deleted file mode 100644
index db29cb6789..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-AUDIO_SUPPORTED = no # Audio is not supported
-
-POINTING_DEVICE_DRIVER = pmw3360
-
-SERIAL_DRIVER = vendor
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/config.h b/keyboards/bastardkb/charybdis/4x6/v2/stemcell/config.h
deleted file mode 100644
index 3efb323302..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/config.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Handedness. */
-#define MASTER_RIGHT
-
-// To use the handedness pin, resistors need to be installed on the adapter PCB.
-// If so, uncomment the following code, and undefine MASTER_RIGHT above.
-// #define A0 PAL_LINE(GPIOA, 0)
-// #define SPLIT_HAND_PIN A0
-// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
-
-/* RGB settings. */
-#define WS2812_PWM_DRIVER PWMD2
-#define WS2812_PWM_CHANNEL 4
-#define WS2812_PWM_PAL_MODE 1
-#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM7
-#define WS2812_PWM_DMA_CHANNEL 3
-
-/* CRC. */
-#define CRC8_USE_TABLE
-#define CRC8_OPTIMIZE_SPEED
-
-/* SPI config for pmw3360 sensor. */
-#define SPI_DRIVER SPID1
-#define SPI_SCK_PIN A5
-#define SPI_SCK_PAL_MODE 5
-#define SPI_MOSI_PIN A7
-#define SPI_MOSI_PAL_MODE 5
-#define SPI_MISO_PIN A6
-#define SPI_MISO_PAL_MODE 5
-
-/* PMW3360 settings. */
-#define POINTING_DEVICE_CS_PIN A1
-#define PMW3360_CS_MODE 3
-#define PMW3360_CS_DIVISOR 64
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/halconf.h b/keyboards/bastardkb/charybdis/4x6/v2/stemcell/halconf.h
deleted file mode 100644
index 0397de50b7..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/halconf.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define HAL_USE_PWM TRUE
-#define HAL_USE_SERIAL TRUE
-#define HAL_USE_SPI TRUE
-
-#include_next <halconf.h>
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json
deleted file mode 100644
index ed929f7fb7..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "keyboard_name": "Charybdis (4x6) STeMCell",
- "usb": {
- "device_version": "2.0.0",
- "shared_endpoint": {
- "keyboard": true
- }
- },
- "features": {
- "bootmagic": true,
- "mousekey": true,
- "extrakey": true,
- "rgb_matrix": true,
- "pointing_device": true
- },
- "rgb_matrix": {
- "driver": "ws2812"
- },
- "ws2812": {
- "pin": "A2",
- "driver": "pwm"
- },
- "build": {
- "debounce_type": "asym_eager_defer_pk"
- },
- "matrix_pins": {
- "cols": ["B1", "B2", "A4", "B4", "B5", "B8"],
- "rows": ["B10", "B0", "B3", "A15", "B9"]
- },
- "diode_direction": "ROW2COL",
- "split": {
- "enabled": true,
- "serial": {
- "pin": "A3"
- }
- },
- "development_board": "stemcell"
-}
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/mcuconf.h b/keyboards/bastardkb/charybdis/4x6/v2/stemcell/mcuconf.h
deleted file mode 100644
index 17a46d8f95..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/mcuconf.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include_next <mcuconf.h>
-
-#undef STM32_SPI_USE_SPI1
-#define STM32_SPI_USE_SPI1 TRUE
-
-#undef STM32_SERIAL_USE_USART1
-#define STM32_SERIAL_USE_USART1 FALSE
-
-#undef STM32_PWM_USE_TIM2
-#define STM32_PWM_USE_TIM2 TRUE
-
-#undef STM32_ST_USE_TIMER
-#define STM32_ST_USE_TIMER 5
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/rules.mk b/keyboards/bastardkb/charybdis/4x6/v2/stemcell/rules.mk
deleted file mode 100644
index 4373b9c33d..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-AUDIO_SUPPORTED = no # Audio is not supported
-
-POINTING_DEVICE_DRIVER = pmw3360
-MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
-
-SERIAL_DRIVER = usart